Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

Using Int variables between 2 scripts

Discussion in 'Getting Started' started by claize, Nov 27, 2021.

  1. claize

    claize

    Joined:
    Jul 5, 2021
    Posts:
    2
    I know that in my case I could as well write the classes together in 1 script, but I wanna learn how to link up 2 scrips properly.
    Button 1 with scipt A: Increases the variable int scoreA by +1 each time it is clicked.
    Button 2 with script B: Does the very same (int scoreB raised +1)
    Button 3 with script C: should compare scoreA and scoreB.

    I cannot figure out how to get the actual/adjusted values of the 2 variables scoreA and scoreB into the third script.(script C)
     
  2. frasderp

    frasderp

    Joined:
    Oct 6, 2016
    Posts:
    19
    There are a few ways to do this.

    One example

    Code (CSharp):
    1. public void Start()
    2. {
    3.     gameObject.Find("NameOfTheGameObjectTarget").GetComponent<NameOfTheScript>().NameOfTheProperty = ...;
    4. }
    Where NameOfTheGameObjectTarget would be Button 1 and 2, NameOfTheScript is self explanatory, and then NameOfTheProperty would be the Scores.

    Another option, instead of using gameObject.Find is to declare these in Script 3 (for example, "public GameObject Script 1" and then assigning the gameobject in the Inspector screen for the gameobject Script 3 is attached to).