• 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
0
Question by IXeller · Aug 30, 2017 at 11:21 PM · booleanboolgameobject.findreceive

Want to check bool from another script but it's not working

Hey guys. Im new in scripting, and I need little help :) I want to receive the bool from another script. I read forum and found solution of user @dorpeleg . Here is this solution.

So, i tried it. This is simple example of my script that should receive bool:

 public class example : MonoBehaviour
 {
     // Use this for initialization
     void Start()
     {
         gameObject.SetActive(false);
     }
 
     // Update is called once per frame
     void Update()
     {
         if (GameObject.Find("Object, that have bool").GetComponent<Script with bool>().thisbool) //will check if true
         {
             Debug.Log("Bool from other script is working."); //I don't receive this debug log. But bool is set to true;
    gameObject.SetActive(true);
         }
     }   
 }
 

Please, help. Bool is "public bool on;". Why I don't receive bool?

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

Answer by dorpeleg · Sep 01, 2017 at 03:56 PM

@IXeller Do you have only one "Object, that have bool" in the scene? GameObject.Find will bring you the first one it finds, so if you have more then one, the first one might be set to false.

Also, it is bad practice to use GameObject.Find or GetComponent in the Update method.

Your problem is, you are turnnig the gameObject off at Start method. So the Update method is not called at all.

Please try this code:

  public class example : MonoBehaviour
  {
      private ScriptWithBool _myScript;
 
      // Use this for initialization
      void Start()
      {
          var tempObject = GameObject.Find("Object, that have bool");
          if(tempObject == null)
          {
           Debug.Log("could not find object");
           return;
           }
          _myScript = tempObject.GetComponent<ScriptWithBool>();
          if(_myScript == null)
          {
           Debug.Log("could not find script on object");
           return;
           }
      }
  
      // Update is called once per frame
      void Update()
      {
          if (ScriptWithBool .thisbool) //will check if true
          {
              Debug.Log("Bool from other script is working."); //I don't receive this debug log. But bool is set to true;
          }
      }   
  }


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.

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

113 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 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 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 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

Animator Boolean not changing to true in C#, 0 Answers

In void bool dont changing 1 Answer

Error 0029 1 Answer

Why does Bool code never work in my C# Script? 1 Answer

how to boolean global and trigger a command when two booleans are true C# 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