UnityではオブジェクトにC#スクリプトをアタッチするのが一般的です。
例えば、オブジェクトAにAスクリプト、オブジェクトBにBスクリプトがアタッチされているとしましょう。
この時、AスクリプトからBスクリプトの変数を参照するにはどうすれば良いのでしょうか。
まず、参照されるスクリプトを以下のように書きます。
public class BScript : MonoBehaviour { //publicにしないと他からアクセスできないよ。 public bool solved = false; }
アクセスされるクラス、変数はpublicにします。
次に参照するAスクリプトは以下のようにします。
public class AScript : MonoBehaviour { public BScript bscript; }
変数bscriptにはUnityエディタ上でBオブジェクトをドラッグ&ドロップしてセットします。
(オブジェクトはFindで探しても良いですが、コードが長くなるので上記のやり方をしています。)
変数にアクセスするには以下の通り。
bscript.solved
以上です。
追記:以下の方法がより一般的かと思ったので追記します。