diff options
Diffstat (limited to 'gamemode/cl_deathmenu.lua')
| -rw-r--r-- | gamemode/cl_deathmenu.lua | 184 |
1 files changed, 53 insertions, 131 deletions
diff --git a/gamemode/cl_deathmenu.lua b/gamemode/cl_deathmenu.lua index b228ee8..0a3474b 100644 --- a/gamemode/cl_deathmenu.lua +++ b/gamemode/cl_deathmenu.lua @@ -177,139 +177,12 @@ function PANEL:Init() resPNL.DoClick = function() local mb = DermaMenu() + addMenuButton(mb, resPNL, "Take x1", amount, 1, v) + addMenuButton(mb, resPNL, "Take x5", amount, 5, v) + addMenuButton(mb, resPNL, "Take x10", amount, 10, v) + addMenuButton(mb, resPNL, "Take All", amount, amount, v) - mb:AddOption("Take x1", function() - - if (amount - 1 <= 0) then - amount = 0 - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - print(getResName(v).." : "..getResName(o)) - giveRes(getResName(o), 1, i) - table.remove(res,i) - end - end - resPNL:Remove() - else - amount = amount - 1 - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), 1, i) - res[i] = getResName(o) .. " x" .. amount - v = res[i] - end - end - - end - - end) - mb:AddOption("Take x5", function() - - if (amount - 5 <= 0) then - - if (amount - 5 == 0) then - amount = 0 - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), 5, i) - table.remove(res, i) - end - end - resPNL:Remove() - else - - num1 = amount - 5 - num2 = 5 + num1 - amount = 0 - - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), num2, i) - table.remove(res,i) - end - end - resPNL:Remove() - end - else - amount = amount - 5 - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), 5, i) - res[i] = getResName(o) .. " x" .. amount - v = res[i] - end - end - - end - - end) - mb:AddOption("Take x10", function() - - if (amount - 10 <= 0) then - - if (amount - 10 == 0) then - amount = 0 - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), 10, i) - table.remove(res, i) - end - end - resPNL:Remove() - else - - num1 = amount - 10 - num2 = 10 + num1 - amount = 0 - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), num2, i) - table.remove(res,i) - end - end - - resPNL:Remove() - - end - else - amount = amount - 10 - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), 10, i) - res[i] = getResName(o) .. " x" .. amount - v = res[i] - end - end - - end - end) - mb:AddOption("Take All", function() - - - for i,o in pairs(res) do - if (getResName(v) == getResName(o)) then - giveRes(getResName(o), amount, i) - amount = 0 - table.remove(res,i) - end - end - - resPNL:Remove() - end) mb:Open() end @@ -338,6 +211,55 @@ function getResName(str) return string.Implode(" ", spl) end +function addMenuButton(mb, resPNL, name, amount, remove, v) + mb:AddOption(name, function() + + if (amount - remove <= 0) then + + if (amount - remove == 0) then + amount = 0 + for i,o in pairs(res) do + if (getResName(v) == getResName(o)) then + giveRes(getResName(o), remove, i) + table.remove(res, i) + end + end + resPNL:Remove() + else + + num1 = amount - remove + num2 = remove + num1 + amount = 0 + + + for i,o in pairs(res) do + if (getResName(v) == getResName(o)) then + giveRes(getResName(o), num2, i) + table.remove(res,i) + end + end + + resPNL:Remove() + end + + else + + amount = amount - remove + + + for i,o in pairs(res) do + if (getResName(v) == getResName(o)) then + giveRes(getResName(o), remove, i) + res[i] = getResName(o) .. " x" .. amount + v = res[i] + end + end + + end + + end) +end + function PANEL:Close() active = 0 self:Remove() |
