Hello!
I want to make Upgrade system and when player is joining to the game, the GUI is automaticly creating. I have module script with every Upgrade info and create function but I gets error.
Module Script:
local UpgradeModule = {
Upgrades = {
Teleport = {
Description = "Unlock teleport and teleport to other areas!",
LayoutOrder = 1,
Amount = 1,
StartPrice = 2500
},
Speed = {
Description = "Increase your speed to 34",
LayoutOrder = 2,
Amount = 3,
StartPrice = 500
},
["Better Luck"] = {
Description = "Increase your Luck by 5%",
LayoutOrder = 3,
Amount = 4,
StartPrice = 750
},
["More Energy"] = {
Description = "Increase your Luck by 10%",
LayoutOrder = 4,
Amount = 5,
StartPrice = 400
},
["More Storage"] = {
Description = "Increase your storage by 25",
LayoutOrder = 5,
Amount = 5,
StartPrice = 75
},
["Extra Company"] = {
Description = "Increase the maximum pet you can equip by 1",
LayoutOrder = 6,
Amount = 1,
StartPrice = 4500
}
}
}
function UpgradeModule.CreateUpgrade(name)
if UpgradeModule.Upgrades[name] then
local UpgradeTemp = script.Template:Clone()
UpgradeTemp.Name = name
UpgradeTemp.UpgradeName.Text = name
UpgradeTemp.Amount.Text = "0/".. UpgradeModule.Upgrades[name].Amount
UpgradeTemp.Info.Text = UpgradeModule.Upgrades[name].Description
UpgradeTemp.LayoutOrder = UpgradeModule.Upgrades[name].LayoutOrder
UpgradeTemp.BuyButton.Text = UpgradeModule.Upgrades[name].StartPrice
UpgradeTemp.Parent = game.Players.LocalPlayer.PlayerGui.Main.Upgrades.Container.Scroller
print('created')
else
warn("upgrade didn't exist: ".. name)
end
end
return UpgradeModule
Local script:
--[[Upgrades]]--
for i, v in pairs(UpgradeModule.Upgrades) do
print(v)
UpgradeModule.CreateUpgrade(v)
end
Error:
