Hi so my upgradesGUI works but when i buy a item it shows the correct price I want but it removes half of the gems of the price it should be, how could i fix this?
Infochanger:
local moreRebirthsButton = script.Parent
local infoHolder = moreRebirthsButton.Parent.Parent.infoHolder
local price = infoHolder.Cost.price
local upgradeInfo = infoHolder.upgradeInfo
local upgradeName = infoHolder.upgradeName
local lastPrice2 = 250 --Last price
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local upgradesFile = player:WaitForChild("Upgrades")
local maxRebirthButtons = 4
moreRebirthsButton.MouseButton1Up:Connect(function()
local rebirthButtonsData = upgradesFile:WaitForChild("rebirthButtons")
if rebirthButtonsData.Value < maxRebirthButtons then
upgradeInfo.Text = "Purchasing this will give you a extra rebirth button!"
upgradeName.Text = "Rebirth Buttons"
price.Text = lastPrice2 .. " Gems" --Update Tex
if infoHolder.Visible == false then
infoHolder.Visible = true
end
else
upgradeInfo.Text = "Purchasing this will give you a extra rebirth button!"
upgradeName.Text = "Rebirth Buttons"
price.Text = "Max"
if infoHolder.Visible == false then
infoHolder.Visible = true
end
end
rebirthButtonsData.Changed:Connect(function()
price.Text = lastPrice2 .. " Gems" --Update Tex
lastPrice2 *= 2 --Set Last price to the new Price
if rebirthButtonsData.Value >= maxRebirthButtons then
price.Text = "Max"
end
end)
end)
upgradeSender:
local buyButton = script.Parent
local infoHolder = buyButton.Parent
local replicatedStorage = game:GetService("ReplicatedStorage")
local remoteEvents = replicatedStorage:WaitForChild("remoteEvents")
local buyUpgrade = remoteEvents:WaitForChild("buyUpgrade")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local upgrades = player:WaitForChild("Upgrades")
local leaderstats = player:WaitForChild("leaderstats")
local lastPrice = 500 --Last price
local lastPrice2 = 250
local maxRebirthButtons = 4
local maxClicksMultiplier = 5
buyButton.MouseButton1Up:Connect(function()
local upgradeName = infoHolder:WaitForChild("upgradeName")
local gems = leaderstats.Gems.Value
if upgradeName.Text == "Rebirth Buttons" then
local rebirthButtons = upgrades:WaitForChild("rebirthButtons").Value
if rebirthButtons < maxRebirthButtons then
lastPrice2 *= 2
if gems >= lastPrice2 then
buyUpgrade:FireServer("rebirthButtons",lastPrice2)
end
end
elseif upgradeName.Text == "Clicks Multiplier"then
local clicksMultiplier = upgrades:WaitForChild("ClicksMultiplier").Value
if clicksMultiplier < maxClicksMultiplier then
lastPrice *= 2 --Set Last price to the new Price
if gems >= lastPrice then
buyUpgrade:FireServer("clicksMultiplier",lastPrice)
end
end
end
end)
