Random Button & Radio Buttons?
-
@ILIAM I just did this too. lol. Little bit different from @HISEnberg but same outcome I guess.
This what I got. Mine checks that the power is on before the Randomizer button works.
inline function onRandomizerControl(component, value) { local Power = Content.getComponent("Power"); local Power = Power.getValue(); local RandomNOW = Math.randInt(1, 16); Console.print(RandomNOW); if (value == 1 && Power == 1) { Buttons[RandomNOW].setValue(1); } }; Content.getComponent("Randomizer").setControlCallback(onRandomizerControl);
HiseSnippet 1272.3ocwX0saaaCElJIpcRqqnYXO.B4hBmgf.I+WbPQv7hSRmwpSLp6xVPPQAiDcLQjIMnnSpaQ.5ixdT1U64YuAajRxVzIVoIzqtJWDPxymNe9vOcNjm1LpOJJhx.F1uYz.Dv3IlcFQ38ZzChIfl6ALdpYKXDGwbRlZ2QCfQQn.fgwxuTNgg0Jf3m+4m1EFBI9nro.fioXezqv8w7rYaW+WwggG.CPuA2Ww5x0a5SIMngzgB9rroKX.z+B34nCgRyVxD7Kvnd.iezrXwt90bcqUpTEWHrT.DV1CUZaT2pc8q3tsavYUbE+UEX7n8CvbJqCGxQQ.iU1kFLpSO5UjDGbLNBeVHRNvCzQ34joOfFFH+IJmEznGNLn83.UDP7VZmE1VNIr8ClsvA3IymE9dV7BNYHTCfFKMM8VdJ54oROWE5MCJYnPoURnzplc7Y3A7rUj74aMaRD6lcgh8IUpjXKXo+1zrAUXAguYe3EnCXhASPTnrq6FNUbcW+E1hGwtUD24RHyoM8JgBYGmwPOGwaP6OfRDCJrV7pqIvjAX2gbtXf.xoyFShAdqs9F1Ny54tPUTKTkzBUYsPUQKTU0B0VZgplVn1VKTdt5ASO0gmdxCO8zGd5IP7zSg3IjHuU7sIlDhIHmtCI9bLk3PIuFRBn8we.wj3YzvB9iAug3Kxvgn0s+nssUH0GFde+d9FVG+eosGKeeExLHw4GdzuKLpEj2aSlXBQVkBda33UUZmskvUQzPzlCXXwBSPHyzXg65THliN6riimyye9XWJFsts0GssrRSnb5DfucynwDwS5AgKt195WXO6eRYgm0VWBLMH0.FFdlnHTgYD.kLSI.eHkiNhTPFEsru114lK0s6LWK8kEhXybYYER1cAr.YX+yPLk8vXCEUAltzhY9kVTq74mDcTLjRZRv7iFfH4UODjFREkgVMkUBS4wEgdZZQnjsG.VTq4wlwadfXBqdVAv8.rkYpPeLbSiGJzhS77iLzvyklO3kmO3UlO3U0Ors0744ZyG7s0Ct8X4h6bh2aNwWbNwW5guwMAa44z2UlS7UmA9eq4dPNTdv0zjGhDJCPLNVlqxXOzkhqMjbLVKy8PQWvoC.Fe+jD1hC1+Yyu79I4V9zw0GMYveNp9U3.durLOGVuGBedOt5L.EWYkqqdhYVUAE+AHJ9q9Gtg+9zo2xeMqGAuD0jzlgD0djGGGG0h1W3cHS7lLVBQfhj0xaR7JDjQjVnxvGeOxW9d0TsiTGbivwI2hdmTmACvzWxnCGndeuGFEJpRgSp+0fBkTo.9qBEJqPg+h8UgBUxUKbR8EDEplqVXgQgsxUKrvnPsb0BKLJrctZA7WZJnTaNOwvhiCd4pFVbbnXtxgEGGJkmdPPnEEGJmmdXAxgJ4oGVfbnZd5g4hC2tQgOyrEMXXHjOceKkc2McAwMNmpYgxFBRhv7Qpu4a1LyUteMy7t6058ktqZ1Fy86Ma9tzL3q3nmeo4aZqg+Ny861E4yyH6JlG7G2Yef++gJulNjiIm2BxYXgRx7vg86PGx7QBlPHnPYWALVRdX9jwtiucQGDIHdv+JdRWzSN1HcQuwKB5C8Yz24mba.Yin+l3YDbhD2zdKyVxwNd29598Eml8c99S+ptEvh5Brjt.KqKvJ5Brpt.2RWf097.kW13mGxo8S9bB.Z0d+36rYXre7sQhUtf+CfziS41
-
@Chazrox @HISEnberg Thank you guys, Very nice
-
@HISEnberg said in Random Button & Radio Buttons?:
Buttons[i].setValue(i == random ? 1 : 0);
I thought about this but I didnt think it needed this because they're already radio buttons.
great excercise!
Hope all is well brothas!
-
@Chazrox said in Random Button & Radio Buttons?:
local Power = Content.getComponent("Power");
You should create this reference as a const in on init.
-
@d-healey noted
-
How about the below script? I need the power button to get randomized, then the radio buttons follow up
Is this good?
@d-healey @HISEnberg @Chazroxconst var Randomizer = Content.getComponent("Randomizer"); const var Power = Content.getComponent("Power"); const var Buttons = Content.getAllComponents("Button"); inline function onRandomizerControl(component, value) { local random = Math.randInt(0, Buttons.length); if(!value) return; Power.setValue(Math.randInt(0, 2)); Power.changed(); if(Power.getValue()==1) { if (value == 1) { for (i = 0; i < Buttons.length; i++) { Buttons[i].setValue(i == random ? 1 : 0); Buttons[i].changed(); // I need this to trigger the callbacks } } } } Randomizer.setControlCallback(onRandomizerControl);
-
-
@d-healey Thanks, David, is this Correct now?
if(Power.getValue()==1) { for (i = 0; i < Buttons.length; i++) { Buttons[i].setValue(i == random ? 1 : 0); Buttons[i].changed(); // I need this to trigger the callbacks } }
-
@ILIAM said in Random Button & Radio Buttons?:
David, is this Correct now?
I don't know, if it does what you want then it is...
Buttons[i].setValue(i == random ? 1 : 0);
i == random
will either be 1 or 0 already, so no need for the ternary operator here. -
This post is deleted!