[CMD]SetPerc

stable
By Strooth in Miscellaneous Published March 2021 👁 1,197 views 💬 0 comments

Description

SetPerc Command creates a dropdown box to select percentage from 0-100 which is used as a replacement of the normal input command. Helps to avoid making mistakes with percentages when things are 0-1 not 0-100 this command is set to 0-1 but easily changed to suit by updating the lists. Example of how to use local maxBudget = CC_SetPerc('01D. Balance Budget', '80%', 'Budget & Safety')
HaasScript
DefineIntervalOptimization(CurrentInterval())
local allpercs = {perc0 = "0%", perc1 = "1%", perc2 = "2%", perc3 = "3%", perc4 = "4%", perc5 = "5%", perc6 = "6%", perc7 = "7%", perc8 = "8%", perc9 = "9%", perc10 = "10%", perc11 = "11%", perc12 = "12%", perc13 = "13%", perc14 = "14%", perc15 = "15%", perc16 = "16%", perc17 = "17%", perc18 = "18%", perc19 = "19%", perc20 = "20%", perc21 = "21%", perc22 = "22%", perc23 = "23%", perc24 = "24%", perc25 = "25%", perc26 = "26%", perc27 = "27%", perc28 = "28%", perc29 = "29%", perc30 = "30%", perc31 = "31%", perc32 = "32%", perc33 = "33%", perc34 = "34%", perc35 = "35%", perc36 = "36%", perc37 = "37%", perc38 = "38%", perc39 = "39%", perc40 = "40%", perc41 = "41%", perc42 = "42%", perc43 = "43%", perc44 = "44%", perc45 = "45%", perc46 = "46%", perc47 = "47%", perc48 = "48%", perc49 = "49%", perc50 = "50%", perc51 = "51%", perc52 = "52%", perc53 = "53%", perc54 = "54%", perc55 = "55%", perc56 = "56%", perc57 = "57%", perc58 = "58%", perc59 = "59%", perc60 = "60%", perc61 = "61%", perc62 = "62%", perc63 = "63%", perc64 = "64%", perc65 = "65%", perc66 = "66%", perc67 = "67%", perc68 = "68%", perc69 = "69%", perc70 = "70%", perc71 = "71%", perc72 = "72%", perc73 = "73%", perc74 = "74%", perc75 = "75%", perc76 = "76%", perc77 = "77%", perc78 = "78%", perc79 = "79%", perc80 = "80%", perc81 = "81%", perc82 = "82%", perc83 = "83%", perc84 = "84%", perc85 = "85%", perc86 = "86%", perc87 = "87%", perc88 = "88%", perc89 = "89%", perc90 = "90%", perc91 = "91%", perc92 = "92%", perc93 = "93%", perc94 = "94%", perc95 = "95%", perc96 = "96%", perc97 = "97%", perc98 = "98%", perc99 = "99%", perc100 = "100%",}
local dName        = 'SetPerc'
DefineCommand(dName, dName)
local sp_params = {
iperc    = InputOptions(DefineParameter(StringType, 'Name', 'The name of the command if using it more than once', false, 'Percentage', 'Percentage'), DefineParameter(StringType, 'Default', 'The the default value', false, allpercs.perc0, 'Perc'), allpercs, 'All Percentages to Select From',DefineParameter(StringType, 'Group', 'The group the command is assigned to ', false, 'Percentage', 'Group')),
pperc    = DefineParameter(StringType, dName, dName, false, allpercs.perc0, dName),}
local sperc 
if sp_params.pperc != '0%' then sperc = sp_params.pperc
elseif sp_params.iperc !='0%' then sperc = sp_params.iperc
else 
sperc = allpercs.perc0
end
sperc = StringSplit(sperc, '%')[1]
sperc = StringJoin('perc', sperc)
local c = {perc0 = 0.00, perc1 = 0.01, perc2 = 0.02, perc3 = 0.03, perc4 = 0.04, perc5 = 0.05, perc6 = 0.06, perc7 = 0.07, perc8 = 0.08, perc9 = 0.09, perc10 = 0.10, perc11 = 0.11, perc12 = 0.12, perc13 = 0.13, perc14 = 0.14, perc15 = 0.15, perc16 = 0.16, perc17 = 0.17, perc18 = 0.18, perc19 = 0.19, perc20 = 0.20, perc21 = 0.21, perc22 = 0.22, perc23 = 0.23, perc24 = 0.24, perc25 = 0.25, perc26 = 0.26, perc27 = 0.27, perc28 = 0.28, perc29 = 0.29, perc30 = 0.30, perc31 = 0.31, perc32 = 0.32, perc33 = 0.33, perc34 = 0.34, perc35 = 0.35, perc36 = 0.36, perc37 = 0.37, perc38 = 0.38, perc39 = 0.39, perc40 = 0.40, perc41 = 0.41, perc42 = 0.42, perc43 = 0.43, perc44 = 0.44, perc45 = 0.45, perc46 = 0.46, perc47 = 0.47, perc48 = 0.48, perc49 = 0.49, perc50 = 0.50, perc51 = 0.51, perc52 = 0.52, perc53 = 0.53, perc54 = 0.54, perc55 = 0.55, perc56 = 0.56, perc57 = 0.57, perc58 = 0.58, perc59 = 0.59, perc60 = 0.60, perc61 = 0.61, perc62 = 0.62, perc63 = 0.63, perc64 = 0.64, perc65 = 0.65, perc66 = 0.66, perc67 = 0.67, perc68 = 0.68, perc69 = 0.69, perc70 = 0.70, perc71 = 0.71, perc72 = 0.72, perc73 = 0.73, perc74 = 0.74, perc75 = 0.75, perc76 = 0.76, perc77 = 0.77, perc78 = 0.78, perc79 = 0.79, perc80 = 0.80, perc81 = 0.81, perc82 = 0.82, perc83 = 0.83, perc84 = 0.84, perc85 = 0.85, perc86 = 0.86, perc87 = 0.87, perc88 = 0.88, perc89 = 0.89, perc90 = 0.90, perc91 = 0.91, perc92 = 0.92, perc93 = 0.93, perc94 = 0.94, perc95 = 0.95, perc96 = 0.96, perc97 = 0.97, perc98 = 0.98, perc99 = 0.99, perc100 = 0.100,}
local out = c[sperc]
DefineOutput(DynamicType, out, 'Perc', 'Perc')

0 Comments

Sign in to leave a comment.

No comments yet. Be the first!