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 /
avatar image
0
Question by phillipe · Nov 26, 2012 at 12:43 PM · randomchildrendeactivate

Deactivate the children

So this script will randomly deactivate game objects once the level starts. The only problem is that it doesn't deactivate the children of these game objects. Can someone modify this for me please. Thanks.

 using UnityEngine;
 using System.Collections;
 using System.Collections.Generic;
 
 public class RandomEnabledOnStart : MonoBehaviour {
 
     public List<GameObject> itemsForRandomEnable=new List<GameObject>();
 
     void Start () {
        if (itemsForRandomEnable!=null && itemsForRandomEnable.Count>0)
        {
          int itemId=new System.Random().Next(itemsForRandomEnable.Count);
          for (int i=0; i<itemsForRandomEnable.Count;i++)
          {
           if (i==itemId){itemsForRandomEnable[i].gameObject.active=true;}
           else{itemsForRandomEnable[i].gameObject.active=false;}
          }
        }
     }
 }
Comment
Add comment
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

2 Replies

· Add your reply
  • Sort: 
avatar image
0
Best Answer

Answer by Tim-Michels · Nov 26, 2012 at 12:45 PM

There's a function called SetActiveRecursively which has effect on all the children of that object.

In your case you should do something like this:

itemsForRandomEnable[i].gameObject.SetActiveRecursively(false);

Please mark as answered if this helped you.

Cheers ;)

Comment
Add comment · 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 phillipe · Nov 26, 2012 at 12:49 PM 0
Share

ok, i'll try this. thanks.

avatar image phillipe · Nov 26, 2012 at 12:55 PM 0
Share

wow, works fine. THAN$$anonymous$$S! Cheers man!

avatar image
0

Answer by Kryptos · Nov 26, 2012 at 01:12 PM

GameObject.SetActiveRecursively and GameObject.active are deprecated in Unity 4.x.

You need to use GameObject.SetActive or GameObject.activeSelf or GameObject.activeInHierarchy.

Comment
Add comment · Show 1 · 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 phillipe · Nov 27, 2012 at 01:51 AM 0
Share

Really? Well, thanks for the info. I haven't stepped into Unity 4 at this time since I've heard some issues upon upgrading and I need to finish my project this December. I'm currently using 3.5

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.

Follow this Question

Answers Answers and Comments

12 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

Related Questions

Randomly deactivate game objects 2 Answers

How to activate and deactivate a gameObject 1 Answer

How to set up random spawnpoints? 1 Answer

Random movement on a plain 2 Answers

How to instantiate 2D object at fixed location? 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