オブジェクトにアタッチされている変数を参照したい とは別オブジェクトにアタッチされているスクリプトの変数を参照したいということでしょうか?もしそうなら結構簡単にできますよ
C#
1public class scriptA : MonoBehaiveir //オブジェクト1
2{
3 public float time = 3;
4}
5
6public class scriptB : MonoBehaiveir //オブジェクト2
7{
8 public scriptA scriptA; //Unityのインスペクタの方で参照
9
10 void update()
11 {
12 var aTime = scriptA.time; //オブジェクト1のtimeを参照
13 }
14}
スペルミス等は無視してくださいまし
この方法だったら参照だけでなく変更までできてしまうのでよいと思います。
1.関数であるvoid型を作り、使いまわしする これもほんと単純だと思うのですが関数を呼び出すものを呼び出したいところで呼び出せば使いまわしができると思います。
2.そこにスクリプト名を引数として入力する これはすみません、理解できませんでした。
別途のところに書いてあるもので、変数のみ違うスクリプトを量産するのは効率が悪いと思います。配列などを用いて一つのスクリプトから分岐させていく方がいいんじゃないでしょうか
C#
1public int number = 0; //Unityのインスペクタから変更
2 //そうすればオブジェクトは違えど分岐が割かし簡単にできる
3List<int> eachTimeList;
4
5void Start()
6{
7 eachTimeList.Add(0.6f); //一番目
8 eachTimeList.Add(6.0f); //二番目
9 eachTimeList.Add(2.8f); //三番目となる
10}
11
12void Update()
13{
14 if (number == 0) { } //もしnumberが0なら
15 else if (number == 1) { } //もしnumberが1なら
16 else if (number == 2) { } //もしnumberが2なら
17
18 float time = eachTimeList[number]; //リストのnumber番目の変数を参照する
19}
20
まあ、頑張ってください