Code:
<panel noclick="1" watch="randommacro1"
ontrigger="
SleepWidget(5);"
onwake="CreateInt('randm_1', Floor(_cl_ms % 12));
If(randm_1 == 0, If(randommacro_1_a == true, Trigger('macroa1')), If(randm_1 == 1, If(randommacro_1_b == true, Trigger('macrob1')), If(randm_1 == 2, If(randommacro_1_c == true, Trigger('macroc1')), If(randm_1 == 3, If(randommacro_1_d == true, Trigger('macrod1')), If(randm_1 == 4, If(randommacro_1_e == true, Trigger('macroe1')), If(randm_1 == 5, If(randommacro_1_f == true, Trigger('macrof1')), If(randm_1 == 6, If(randommacro_1_g == true, Trigger('macrog1')), If(randm_1 == 7, If(randommacro_1_h == true, Trigger('macroh1')), If(randm_1 == 8, If(randommacro_1_i == true, Trigger('macroi1')), If(randm_1 == 9, If(randommacro_1_j == true, Trigger('macroj1')), If(randm_1 == 10, If(randommacro_1_k == true, Trigger('macrok1')), If(randm_1 == 11, If(randommacro_1_m == true, Trigger('macrom1')), Trigger('randommacro1')))))))))))));" />
It checks first to see if the first macro is called for.
If it is called for and enabled, it plays the macro. If it is called for but disabled it repeats the entire process to generate a new random number.
If the first macro isn't called for (chances are it's not), it goes to the "else" portion which checks the second one, repeating the ^ process. The whole "else" process repeats until all 12 macros are checked against the random number.
The old way had it generating random numbers each check and it forgot what it was checking. If someone didn't have the first macro enabled, it wouldn't work. As of 1.6 the new "else" chain replaced the old one and the Random Macro function works. Nobody has told me v1.6 Random Macro doesn't work.