Stats script(Module)
local module = { ["Eff"] = 1, --efficiency ["Delay"] = .075, --Waitime between mining the blocks ["Range"] = 5 --How much blocks in range he can mine } function module.LoadAxe() local players = game:GetService("Players") local plr = players.LocalPlayer local AxeLevel = plr.AxeLevel if AxeLevel == "Silver" then module["EFF"] = 1 module["Delay"] = .075 module["Range"] = 5 elseif AxeLevel == "Gold" then module["EFF"] = 2 module["Delay"] = .05 module["Range"] = 6 elseif AxeLevel == "Diamond" then module["EFF"] = 4 module["Delay"] = .04 module["Range"] = 7 end end function module.LvlChanged() local plrs = game:GetService("Players") local Player = plrs.LocalPlayer local AxeLevel = Player.AxeLevel if AxeLevel == "Silver" then module["EFF"] = 1 module["Delay"] = .075 module["Range"] = 5 elseif AxeLevel == "Gold" then module["EFF"] = 2 module["Delay"] = .05 module["Range"] = 6 elseif AxeLevel == "Diamond" then module["EFF"] = 4 module["Delay"] = .04 module["Range"] = 7 end end return module
Upgrade Script(Local)
local plr = game.Players.LocalPlayer local money = plr:WaitForChild("Money") local AxeStorage = game.ReplicatedStorage.Axe local AxeStats = require(plr.Backpack.Pickaxe.Stats) script.Parent.MouseButton1Click:connect(function() if money.Value >= 1000 then AxeStats.LvlChanged() money.Value = money.Value - 1000 script.Parent.Text = "Purchase Successful!" wait(3) script.Parent.Text = "Silver Pickaxe - $1000" else script.Parent.Text = "Not Enough Money!" wait(3) script.Parent.Text = "Silver Pickaxe - $1000" end end)
Load Axe(Script)
game.Players.PlayerAdded:connect(function(Player) local Axe = Player.Backpack.Pickaxe local stats = require(Axe.Stats) stats.LoadAxe() end)