Untitled

 avatar
unknown
lua
2 years ago
2.2 kB
10
Indexable
local przyciski = script.Parent.Przyciski
local zakupy = script.Parent.Zakupy

local magazyn = {}

local DSS = game:GetService("DataStoreService")
local Bank = DSS:GetDataStore("Kasa")

local function ukryjPrzycisk(przycisk)
	przycisk.CanTouch = false
	przycisk.Transparency = 1
	przycisk.Tablica.Enabled = false
end

local function odkryjPrzycisk(przycisk)
	przycisk.CanTouch = true
	przycisk.Transparency = 0
	przycisk.Tablica.Enabled = true
end

local function nowyPrzycisk(przycisk)
	local zakup
	local nazwa = przycisk.Name

	if zakupy:FindFirstChild(nazwa) then
		zakup = zakupy[nazwa]
		magazyn[nazwa] = zakup:Clone()
		zakup:Destroy()
	else
		warn("Brakuje zakupu: " .. nazwa)
	end

	if not (nazwa == "1") then
		ukryjPrzycisk(przycisk)
	end

	przycisk.Touched:Connect(function(hit)
		local player = game.Players:FindFirstChild(hit.Parent.Name)

		if player then          

			local zakup = magazyn[nazwa]

			if zakup then
				zakup.Parent = zakupy
			end

			for i, element in pairs(przycisk:GetChildren()) do
				if element.Name == "Kolejny" then

					local przyciskDoOdkrycia = przyciski:FindFirstChild(element.Value)

					if przyciskDoOdkrycia then
						odkryjPrzycisk(przyciskDoOdkrycia)
					else
						warn("Brakuje przycisku: " .. element.Value)
					end

				end
			end

			przycisk:Destroy()

		end
	end)
end


game.Players.PlayerAdded:Connect(function(player)
	local kasa = Bank:GetAsync(player.UserId) or 0
	
	local tablicaNaSerwerze = Instance.new("Folder", game.ServerStorage)
	tablicaNaSerwerze.Name = player.Name
	
	local kasaNaSerwerze = Instance.new("NumberValue", tablicaNaSerwerze)
	kasaNaSerwerze.Name = "Kasa"
	kasaNaSerwerze.Value = kasa
	
	local tablicaLokalnie = Instance.new("Folder", player)
	tablicaLokalnie.Name = "leaderstats"
	
	local kasaLokalnie = Instance.new("NumberValue", tablicaLokalnie)
	kasaLokalnie.Name = "Kasa"
	kasaLokalnie.Value = kasa
	
	player:LoadCharacter()
	
	kasaNaSerwerze.Changed:Connect(function(liczba)
		kasaLokalnie.Value = liczba
	end)

	while true do
		Bank:SetAsync(player.UserId, kasaNaSerwerze.Value)
		print("Kasa zapisana!")
		wait(10)
	end
	
	for i, przycisk in pairs(przyciski:GetChildren()) do
		nowyPrzycisk(przycisk)
	end
end)
Editor is loading...