Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local TeleportService = game:GetService("TeleportService")
- local SaveCurrency = game:GetService("DataStoreService"):GetDataStore("Rounds")
- local SaveCurrency2 = game:GetService("DataStoreService"):GetDataStore("Wins")
- local SaveCurrency3 = game:GetService("DataStoreService"):GetDataStore("Coins")
- local SaveExtraLives = game:GetService("DataStoreService"):GetDataStore("Lives")
- local SaveRoleData = game:GetService("DataStoreService"):GetDataStore("Role")
- local SaveMoneyData = game:GetService("DataStoreService"):GetDataStore("Money")
- local VIPGamepassId = "265392817"
- game.Players.PlayerAdded:Connect(function(player)
- if game.ReplicatedStorage.Tags.Leaderstats.Value == true then
- local Folder = Instance.new("Folder",player)
- Folder.Name = "leaderstats"
- local Currency = Instance.new("NumberValue",Folder)
- Currency.Name = game.ReplicatedStorage.Tags.RoundsValue.Value
- Currency.Value = SaveCurrency:GetAsync(player.UserId) or 0
- local Currency2 = Instance.new("NumberValue",Folder)
- Currency2.Name = game.ReplicatedStorage.Tags.WinsValue.Value
- Currency2.Value = SaveCurrency2:GetAsync(player.UserId) or 0
- local previousData = SaveCurrency3:GetAsync(player.UserId)
- local Coins
- if previousData ~= nil then
- Coins = previousData
- else
- Coins = 0
- SaveCurrency3:SetAsync(player.UserId, 0)
- end
- local CoinsValue = Instance.new("NumberValue", player)
- CoinsValue.Name = "Coins"
- CoinsValue.Value = Coins
- local val1 = Instance.new("StringValue",player)
- val1.Name = 'GotPet'
- val1.Value = ''
- local val2 = Instance.new("StringValue",player)
- val2.Name = 'OpenValue'
- val2.Value = ''
- local previousData2 = SaveExtraLives:GetAsync(player.UserId)
- local Lives
- local previousData3 = SaveRoleData:GetAsync(player.UserId)
- local Role
- local previousData4 = SaveMoneyData:GetAsync(player.UserId)
- local Money
- if previousData2 ~= nil then
- Lives = previousData2
- else
- Lives = 0
- SaveExtraLives:SetAsync(player.UserId, 0)
- end
- if previousData3 ~= nil then
- Role = previousData3
- else
- Role = player.Role.Value
- SaveRoleData:SetAsync(player.UserId, player.Role.Value)
- end
- if previousData4 ~= nil then
- Money = previousData4
- else
- SaveMoneyData:SetAsync(player.UserId, 0)
- end
- local ExtraLivesValue = Instance.new("NumberValue", player)
- ExtraLivesValue.Name = "Lives"
- ExtraLivesValue.Value = Lives
- local RoleValue = Instance.new("StringValue", player)
- RoleValue.Name = "Role"
- RoleValue.Value = Role
- if player:WaitForChild("Role").Value >= "Normal Kid" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 0.7
- player.Character.Humanoid.BodyHeightScale.Value = 0.7
- player.Character.Humanoid.BodyWidthScale.Value = 0.6
- elseif player:WaitForChild("Role").Value >= "Protector 1" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "Medic" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "Fighter" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 0.7
- player.Character.Humanoid.BodyHeightScale.Value = 0.7
- player.Character.Humanoid.BodyWidthScale.Value = 0.6
- elseif player:WaitForChild("Role").Value >= "Protector 3" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "PREMIUM" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "Default Kid" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "Adventure" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- elseif player:WaitForChild("Role").Value >= "Fat Kid" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 0.9
- player.Character.Humanoid.BodyHeightScale.Value = 0.7
- player.Character.Humanoid.BodyWidthScale.Value = 0.7
- elseif player:WaitForChild("Role").Value >= "Golden Protector" then
- player.Character.Humanoid.MaxHealth = 100
- player.Character.Humanoid.BodyDepthScale.Value = 1
- player.Character.Humanoid.BodyHeightScale.Value = 1
- player.Character.Humanoid.BodyWidthScale.Value = 1
- end
- local MoneyValue = Instance.new("NumberValue", player)
- MoneyValue.Name = "Money"
- MoneyValue.Value = Money
- if game:GetService("MarketplaceService"):UserOwnsGamePassAsync(player.UserId, VIPGamepassId) then
- player.Coins.Value = player.Coins.Value * 2
- end
- end
- end)
- game.Players.PlayerRemoving:Connect(function(player)
- if game.ReplicatedStorage.Tags.Leaderstats.Value == true then
- SaveCurrency:SetAsync(player.UserId,player.leaderstats[game.ReplicatedStorage.Tags.RoundsValue.Value].Value)
- SaveCurrency2:SetAsync(player.UserId,player.leaderstats[game.ReplicatedStorage.Tags.WinsValue.Value].Value)
- end
- end)
- game:BindToClose(function()
- print("STOPPED!")
- for i,player in pairs(game.Players:GetPlayers()) do
- local value = player.Coins.Value
- SaveCurrency3:SetAsync(player.UserId, value)
- print("Saved data for "..player.Name)
- end
- end)
- game.Players.PlayerRemoving:Connect(function(player)
- local value = player.Coins.Value
- if value ~= nil then
- print("Found data to save for "..player.Name.."!")
- SaveCurrency3:SetAsync(player.UserId, value)
- print("Saved data for "..player.Name)
- else
- print("Did not manage to find data to save for "..player.Name.."!")
- end
- end)
- game:BindToClose(function()
- print("STOPPED!")
- for i, player in pairs(game.Players:GetPlayers()) do
- local value2 = player.Lives.Value
- SaveExtraLives:SetAsync(player.UserId, value2)
- end
- end)
- game.Players.PlayerRemoving:Connect(function(player)
- local value2 = player.Lives.Value
- if value2 ~= nil then
- print("Found data to save for "..player.Name.."!")
- SaveExtraLives:SetAsync(player.UserId, value2)
- print("Saved data for "..player.Name)
- else
- print("Did not manage to find data to save for "..player.Name.."!")
- end
- end)
- game:BindToClose(function()
- print("STOPPED!")
- for i, player in pairs(game.Players:GetPlayers()) do
- local value3 = player.Role.Value
- SaveRoleData:SetAsync(player.UserId, value3)
- end
- end)
- game.Players.PlayerRemoving:Connect(function(player)
- local value3 = player.Role.Value
- if value3 ~= nil then
- print("Found data to save for "..player.Name.."!")
- SaveRoleData:SetAsync(player.UserId, value3)
- print("Saved data for "..player.Name)
- else
- print("Did not manage to find data to save for "..player.Name.."!")
- end
- end)
- game:BindToClose(function()
- print("STOPPED!")
- for i, player in pairs(game.Players:GetPlayers()) do
- local value3 = player.Money.Value
- SaveRoleData:SetAsync(player.UserId, value3)
- end
- end)
- game.Players.PlayerRemoving:Connect(function(player)
- local value3 = player.Money.Value
- if value3 ~= nil then
- print("Found data to save for "..player.Name.."!")
- SaveRoleData:SetAsync(player.UserId, value3)
- print("Saved data for "..player.Name)
- else
- print("Did not manage to find data to save for "..player.Name.."!")
- end
- end)
- game.Players.PlayerAdded:connect(function(player)
- player.CharacterAdded:connect(function(char)
- char.Humanoid.Died:connect(function()
- SaveCurrency:SetAsync(player.UserId, player.leaderstats.Rounds.Value)
- SaveExtraLives:SetAsync(player.UserId, player.Lives.Value)
- player.leaderstats.Rounds.Value = player.leaderstats.Rounds.Value + 1
- player.Lives.Value = player.Lives.Value - 1
- end)
- end)
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement