# Random Repetition

This forum is currently in read-only mode.
0 favourites
• 16 posts
From the Asset Store
Easily generate many levels from a set of pre-built scenes (Construct 3 template)
• How can I fill a list with numbers from 1-10 with random order but without repeating ?

• You have to exclude the numbers already picked.

• but how to do that?

• Using conditions.

Set a variable:

=> Set var X = random(10)+1

Compare that variable to others already seted:

+If var X == var Y

=> Set var X = random(10)+1

Use loops to reapeat this until the condition "+If var X == var Y" is wrong.

Maybe there are another way to do this, but i can't think any other way right now.

• Thanks for your quick help. It works as it should but it is extreme slow.

It takes 3-4 seconds for all 10 numbers to be generated.

If i turn FPS to unlimited it is much much faster.

Is there a faster way for doing this? I need the numbers on the fly but i dont want to turn off vsync.

• But you used loops? With loops you can do it in 1 frame.

• shure but there is a problem using loops on this because i can not use expressions fpr writing the nubers to the variables.

• I don't get it to work. To bad my english is not that good. I try to explain what exactly i want.

I have an Array with 10 Flields on X axis. For each field i want a number from 1-10 but without repeat used numbers.

this could look like this: 5,8,2,1,6,9,3,10,4,7

No double numbers, just the numbers from 1-10 in a random order.

Thank you so much.

• EDIT oh, shadowlord beat me to it <img src="smileys/smiley36.gif" border="0" align="middle" /> That brings up the question, why I saw his post not before posting mine <img src="smileys/smiley5.gif" border="0" align="middle" />

• you may trying putting all numers in the array so then apply an loop to radomize the numbers...

cap

• Was trying to solve this same problem as simple as possible and looks like all the .cap files are out of date.

I am trying to create show numbers 1-3 randomly without repeating. Seems pretty simple but I am just getting stuck as my programming skills are not great. Any help is appreciated.

Here is what I have tried.

I have set three global variables.

varX

varY

varZ

On start of layout I am setting each of those...

System > Set varX to floor(random(3)+1)

System > Set varY to floor(random(3)+1)

System > Set varZ to floor(random(3)+1)

I am then setting text boxes on the layout to display each of the variables.

What are my next steps to check that all three numbers are different. 1, 2, 3 should show up in a different order each time.

Any help, explanation, etc. would be greatly appreciated. I am sure there is a much more simple way to approach this. Thanks for the time!

• Took a stab. It seems to be working properly although I am wondering how to optimize make a lot more efficient as I can't imagine this being the most efficient approach. Any suggestions, improvements, etc. are greatly appreciated. Thanks for the time

Here is the link to my .capx file via dropbox:

db.tt/AzLg3meh

• ## Try Construct 3

Develop games in your browser. Powerful, performant & highly capable.

Construct 3 users don't see these ads
• Thanks so much for the reply but I am on a newer version of C2 and cannot open to have a look at the example. Appreciate your time uploading Jayjay!

• 16 posts