Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
This question was closed Nov 03, 2014 at 05:32 AM by robertbu for the following reason:

Duplicate Question

avatar image
0
Question by noobunity · Nov 03, 2014 at 05:32 AM · instantiaterandomrandomize

instantiate objects randomly and unique to fixed positions

I am creating a game where there are 3 positions p1,p2,p3 and there are 3 objects, b1,b2,b3. Now When game opens I want to assign each object a unique random position. so if b1 takes position p2, then b2 should take p1 or p3. if b2 takes p3 then b3 should take p1. I am totally confused. I can assign random positions to objects but I am not sure how to make it unique, so the next object should not take the position which is already taken.

So basically in the game, user is presented with the 3 boxes. And one of them is a bad box but all boxes look same. I want to assign that bad box a random position always. so if user clicks bad box game is over, if user clicks other boxes he goes to the next level and again 3 boxes comes with bad box in one of the three positions

Please help me with this

Thanks in advance

Comment
Add comment · Show 1
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image robertbu · Nov 03, 2014 at 05:35 AM 0
Share

1) Put either your objects or your positions in an array and shuffle the array. Shuffle code has been posted to Unity Answers and Unity Forums several times, and you will find versions of it numerous places on the web. After shuffling, assign in order. 2) Put either your objects or your position in a generic List. Pick from the list randomly and then assign, deleting the entry after use.

Note for a three entry array, you can shuffle by:

 var i = Random.Range(0, 3);
 if (i != 0) { 
    var t = theArray[0];
    theArray[0] = theArray[i];
    theArray[i] = t;
 }
 i = Random.Range(1,3);
 if (i != 1) {
    t = theArray[1];
    theArray[1]= theArray[i];
    theArray[i] = t;
 }

0 Replies

  • Sort: 

Follow this Question

Answers Answers and Comments

2 People are following this question.

avatar image avatar image

Related Questions

Instantiate Prefab at random times but keep 3 from spawning 2 Answers

spawn muzzle flash with random rotation? 2 Answers

Instantiate a random prefab at an objects location 3 Answers

Instantiating a random prefab from array. 1 Answer

How to instantiate prefabs between 2 objects like a path 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges