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 Cyborgking · Dec 10, 2014 at 02:23 AM · uigameobjectmultiplayerdisabling

gameObject.setActive not working even though function gets triggered

I'm using the new Unity 4.6 UI to show a player row for each player that is in the game. I'm using gameObject.setActive to hide/show the row. These rows are in a gameobject that initially gets disabled and is enabled when the game is started(there are enough players). For some reason the row gameobject is not reactivated with setActive even though the function that sets the gameobject active is called.

This is in my script that handles the player row:

 private bool m_Taken = false;

 public bool Taken
 {
     get
     {
         return m_Taken;
     }
 }

 public void Take(PhotonPlayer player)
 {
     if (m_Taken)
         return;

     m_Taken = true;

     /* this part is called by ActivateRow but the gameObject stays inactive */
     gameObject.SetActive(true);
 }

 void Start()
 {
     Untake();
 }

 public void Untake()
 {
     m_Taken = false;
     gameObject.SetActive(false);
 }

And this handles the activation of a row for a player (PartnerMatchingPage):

 private PartnerRowHandler[] selectablePlayerRows;
 private Dictionary<int, PartnerRowHandler> playerRows;

 public PartnerRowHandler ActivateRow(PhotonPlayer player)
 {
     int ID = player.ID;

     /* checks whether the player doesn't already have a row */
     if (playerRows.ContainsKey(ID))
         return playerRows[ID];

     for (int i = 0; i < selectablePlayerRows.Length; i++)
     {
         if (selectablePlayerRows[i].Taken)
             continue;

         /* assign found inactive row to the given player */
         selectablePlayerRows[i].Take(player);
         playerRows[ID] = selectablePlayerRows[i];

         return playerRows[ID];
     }
     return null;
 }

And this is called when the game starts:

 private PartnerMatchingPage m_PartnerPage;

 private void StartMatching()
 {
     m_PartnerPage.gameObject.SetActive(true);

     /* show row for self */
     PartnerRowHandler row = m_PartnerPage.ActivateRow(PhotonNetwork.player);
 }
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

1 Reply

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

Answer by Cyborgking · Jan 03, 2015 at 06:07 PM

It turned out that Start() is triggered after the rows have been taken (when they get taken they get enabled). This probably has something to do with that they are initially disabled. This immediatly untakes them and therefore disables them.

changing the function of Start() to this fixes the problem:

 void Start()
 {
     if (!m_Taken)
         Untake();
 }
Comment
Add comment · 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

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

2 People are following this question.

avatar image avatar image

Related Questions

Mobile Multiplayer touch controls 0 Answers

On Button Click Enable - Disable GameObject Through Inspector 1 Answer

Shield for player in multiplayer fps malfunctioning 0 Answers

UI Selection in GameObject dropdown out of place? 1 Answer

instantiate gameobjects inside a canvas 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