• 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 /
  • Help Room /
avatar image
Question by KujaEx · Sep 26, 2015 at 09:11 PM · gameobjectssetactiveroll a ball

Roll a Ball Game Tutorial: Reactivate the Pick Up Objects?

Hello, I did t$$anonymous$$s tutorial: http://unity3d.com/learn/tutorials/projects/roll-ball-tutorial

All is working fine.

Now I wanted to extend the game by resetting everyt$$anonymous$$ng (without loading scene again). I can reset the player fine, but I have problems with the Pick Ups gameobjects. I searched for similar problems here and found t$$anonymous$$s solution, w$$anonymous$$ch seems good:

 GameObject[] gameObjects = GameObject.FindGameObjectsWithTag("Pick Up");
 foreach (GameObject item in gameObjects) 
 {
             item.SetActive(true);
 }

But it doesn't work. The Array is empty (tried to use index 1 for example) but the Tag is right, because I also used it for the collision detection. Whats wrong?

(btw: Or is it also possible to speak with the parent of all the Pick Up objects?)

Thanks for help.

Comment
mmuelle4

People who like this

1 Show 0
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

1 Reply

· Add your reply
  • Sort: 
avatar image
Best Answer

Answer by SpaceManDan · Sep 27, 2015 at 07:22 AM

@KujaEx

Your problem is the way you are updating the array. When you are filling up your array it will not find inactive objects so what you need to do is t$$anonymous$$s.

 GameObject[] gameObjects;

 void Start()
 {
     gameObjects = GameObject.FindGameObjectsWithTag("Pick Up");
 }

 void Update()
 {
     if (Input.GetKeyDown("g"))
     {
         foreach (GameObject item in gameObjects)
         {
             item.SetActive(true);
         }
     } 
 }

You need to fill the array at the beginning of the game and no other time. You want it to remain filled with all the objects, not updated every time you want to reset.

Comment
KujaEx
mmuelle4
unity_2vXVzuO8CUv9vQ

People who like this

3 Show 2 · Share
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 KujaEx · Sep 27, 2015 at 07:35 AM 0
Share

Thanks, that helped. So the problem was, that the FindGameObjectsWithTag("Pick Up")-function can't find inactive GameObjects :/ I already tried the thing with the start a while ago, but the compiler said, that I couldn't use that function in the start... but maybe I had some other bugs at that time, too... Well, now its working, so thanks again^^

avatar image klory · Sep 19, 2016 at 08:34 PM 0
Share

Thank you for your help.

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

30 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

How to make all objects appear in order when user press the oculus remote button? 0 Answers

List resulting in out of range 0 Answers

Cycle through objects on mouse click 1 Answer

GameObject - SetActive not working 1 Answer

issues with other.gameObject.SetActive(false); 1 Answer


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