Randomizer on 3 Grouped buttons, How?
-
@d-healey :( Oh god that makes me wanna hit my head to the wall :( no way it sounds harder now
-
@Natan Well have a go at it and see how you get on. When you get stuck show me what you've got and we'll go from there.
-
@d-healey said in Randomizer on 3 Grouped buttons, How?:
at it and see how you get on. When you get stuck show me what you've got and we'll go from there.
Let me focus on it, thanks Sir :)
-
I only can do it in this dirty way :(
HiseSnippet 1117.3ocyW0saaaCElxILn1YtnEqO.B4Jaft.I61tgUDLO6jTXrkTi5zfcWAiDsMgkHEjnRpaP.1ix.1KxdK1qQeC1NTR1h1Q9mXr.L4Kr442O+cn34vdgBGZTjHDYT9hIATjw2f6OgKG0YDgwQcOFY7T7YjHIMzLUT6IAjnHpKxvXm2oDXTdWTxyW+o1DOB2glKBgtTvbn+JymIyk1q0uv77Nk3Ruf4qY8qZ00Qv6H7Dw.d1AagBHNiIComSTlUBiL16DWlTD1WRjzHjwtsEtS5ORbCO09KYQrq7npE1n9PfREepvyUgXkTTmQLO2dS+eGgfnzKmE1IkEdA9LlKal7b13YIJLy8PmOLJsJ3YqCOqMGdFZva2T38bbemPVfLWiBa6i6xgB0.BTBzgUpsnR+IF2Q.VvkG5SFSOMDVLyiZuwx5klu1xp9aqVQ8AJEQRyqIglefvcaew4lGYN08gTYGgeffCKpcPl9CTdNuWB+04WhEGb+b1VxsWpiJkKjMPTiUYei6aeyUYeyYXpZEF2iwolCh4NRlfaJ3Y+iUdGJ7p4L00WBw1KlVuZkaqVorI7vFXVKQl4QGYZAJTBMuM6a0yzetVN5vHp7RUnpcFQN5vPPCT8pAUsl0UfcSCiyHBeH0sV82lm7zutKaYQX29++X+tjJ1Z1ipPRVcqCwy6J3DlZKVPyK8Ku7mfnUuAPAqnaXRmQY7XBEd6LdygDQMs9wzEp8z4rj8TRQs0MWrkl3lEH9pPJYb1u0xgcg4vp3bXuQ4XZ70xRiGRVVx+D6ExBTTWecUaOVwUV8ZUZsUqXdtPReOuV8J2Vobk6pXtnpACJTWV37ngEpV0YKbUNViG6eEMb5FloFBGwOeOD7x6gn2hyIkczLTv6xYx2GP4KqyBJiRUs.yPEXpLoCySy5vzNVJEbDCZjTFm8VBJAx5M9Qaf66gUaLl46dFSGQXS8sQtunGpuMKv2O18XhjnZvlwC.2DPCkLEsabL8ZXxkz1skwGSiFKEAP4X1dOfz1.p5yyno+RzZxrE+9EsPZQBuNVKOLnOpEFyAsBItLw6BEwAKTP1zf2PK3OK3+3f2TK3e8KOzfu+7AuuGykFlD78wyduVKC+wXsLXE2xmnwanVvTrA8YeAhHFaenEJhbMsKuWHEN3PMmDkSf2rRFYRR+LH5ayxhoZJldLmwP1ug4JGAQv3ugPNhxFNRwBF1IC1duA0fwEEtwdD47yPpFbNSAbnvbCqoFHiGwjSzIkGkAK2T39bbOUOrhwaoBvK7J0iMdyFSuJ9jACnNxbvtK9ze6welbzGDwRFeHLLSHC1igOO1uObqEGJfDNm5oN31nj5.pz0Vp0JloOk6lr3efmLk1p0FYJsmpD4SbBEexI8DN0EAdRhD.S7j6CUFtXFr1b1YpXrErq1GtexmbbTTw2AXuXeZrE9zbK74UagOudK74MagOe+V3yOrReTWM7mikB+zWS.A8NIoGigwI4msf9WLAGGPB
-
Make a new file. Generate a random value between 0 and 2 and output it to the console.
-
@d-healey Is This Good Sir?
HiseSnippet 807.3ocsUstSaCCE1tfQzrUzPZO.Q7qVotpTtsIglFqWXpZCnhxPSBgPFGWpEI1YINrUg38bOF6MX63bgFXUEnRq+pmKeG+ki+NG2OTw3QQpPDt7wiC3H7KICFK0iZOhJjndcP3UH6Siz7P6TWsFGPih3tHLdgOYbfKuHJ42u+PKpGUx3SbgPmnDL9WD9B8Du828yBOu8nt7iE9Exdyc6wTx1JOULvmEHNn.J6J5k7CnlzJQP3k55JzpvAZplGgvK1R4NdvH0Ojo4ehHRbgG2XzDM.JTp68TdtFFa7hZOR341O+6NBAUo+jtvBocgWS1W3Jty+jtwqRBXOAQw9AtzrnWyGmdNSid3BzawT5sJY.KTDnmDwvsWP5IgKpgT3JnHsRyEU5WXRaEjgT2vmdEeuPv3NDU21wot8VNN01ohUEK3hHRaeMMz1e7ITuXdj86sO0ody5qWeiy1oXBGQkt8NFBmW7K451J+.kDLptVZ30RKqP5Ijb6gwRlVnj1JYZXCzPkWUVNt5PogSsVEqapXYW3GjYjxi2HHT.UOmbmtOUOpQnoVfW3CYyZmUaGa6JV2lbtylZMhLtSXPapm2Efpq5CXlg9EX8AJM+PY0ZV2XU15VK6GFZ3voFKqXd7voF1LNDNKfUkw9WvCyaN4IB5h6K7V5oI7XockBIpj8jB8gA7L6YO4fxZqFQZFCgT0IRzUxjnsh0ZkDIfhrLIskhRXewsDnu1qCUSyqCTR3XB3gZg4qA2geMrEIU5WlzgGckVEjja1UIz.d7S8mHLA+c3vFa9y5Iah9mIKX9V4F6Q02en2roKK.bgbuoKyDjLRnGWbS3yXSfySdQ0SktqR5KzrQSmuklBeg99+a9lsWsBo6vgbldBYWjr22l2knOCpbjJVKjWBqIBEFgvAw9CfmYXbfIRI2KxnIJYjzo1NFaSmY.W5lX7G3WVvlFabVvl4AQ9TVn5bV5ffYy8xId.NISd.qL7RJXa2Le.fPbZ3f7gGTNmwLsh2.be5XVeNvrwbfYy4.yVyAlsmCLucNv7tYhw7V9Gi0J+zwDvQ+tIKhv3tRJnxRTjn+xdlqWc
-
It's a good start but there are a few problems.
1: I said forget about buttons. Just
Console.print()
in on init.
2: Your function is generating numbers between 0 and 3, you need 0 and 2This is all that was needed
const randomValue = Math.randInt(0, 3); Console.print(randomValue);
Since you're addicted to buttons let's move on to them :p
Add your 4 buttons, put the 3 you want to be random into an array. In the callback for the other button generate a random number between 0 and 2, like you did in your last snippet, and output it to the console.
-
@d-healey Haha :) Sir!!!
-
@d-healey No Idea,can't do it by myself :)
-
@Natan Yes you can, one step at a time. You're not by yourself, I'm here :D
Can you create an array?
Can you create a button?
Can you put a reference to the button into the array? -
@d-healey
I'm still here:Content.makeFrontInterface(600, 500); const randomValue = Math.randInt(0, 3); Console.print(randomValue); const var Btns = [Content.getComponent("Button3"), Content.getComponent("Button2"), Content.getComponent("Button1")]; inline function onRandITControl(component, value) { }; Content.getComponent("RandIT").setControlCallback(onRandITControl);
-
Perfect. Now move the
randomValue
inside the button's callback function, you'll need to use alocal
variable instead of aconst
.You can use the random value as the
Btns
array index to turn on one of the buttons. -
@d-healey is this correct?
Content.makeFrontInterface(600, 500); const randomValue = Math.randInt(0, 3); Console.print(randomValue); const var Btns = [Content.getComponent("Button3"), Content.getComponent("Button2"), Content.getComponent("Button1")]; inline function onRandITControl(component, value) { local idx = buttons.indexOf(component); }; Content.getComponent("RandIT").setControlCallback(onRandITControl);
-
@Natan Not even close :p
Move the
randomValue
stuff inside the button's callback. You'll need to use a local variable instead of a const. You can delete theConsole.print()
we don't need that now. -
@d-healey Lol
Content.makeFrontInterface(600, 500); const var Btns = [Content.getComponent("Button3"), Content.getComponent("Button2"), Content.getComponent("Button1")]; inline function onRandITControl(component, value) { local randomValue = Math.randInt(0, 3); Console.print(randomValue); }; Content.getComponent("RandIT").setControlCallback(onRandITControl);
-
Now we're getting somewhere!
We don't need
Console.print()
any more, that was just for testing the random value which we know works now.Do you know how to turn a button on or off by changing its value?
-
@d-healey Yeah, I Guess I'm So Close :)
Wait Sir -
@d-healey Haha, That Was A Real Challenge, And Yep This is it :)
Content.makeFrontInterface(600, 500); const var Btns = [Content.getComponent("Button3"), Content.getComponent("Button2"), Content.getComponent("Button1")]; inline function onRandITControl(component, value) { local randomValue = Math.randInt(0, 3); Console.print(randomValue); if (value == 1) { Btns[randomValue].setValue(1); } }; Content.getComponent("RandIT").setControlCallback(onRandITControl);
-
Yeah looks like you got it! Well done!
-
@d-healey :) Haha Yessir :)
Thanks You Dear David, True Legend :)