。
ゲームオブジェクトにはゲームオブジェクトを含めることはできません。これらの変数を保持する方法を探していて、これを行うスクリプトを使用するのが適切であるようです。
だから、あなたが必要とする私と同じ1
であまりにも多くの変数名を作成する必要はありませんすべては、各食品のタイプを保持しているスクリプトです。その後、各食品タイプの配列を作成することができます。これは私にとってこの質問に聞こえるものです。うまくいけば、私はこれを正しく読んでいます。
あなたの質問に非常に近いとすれば、Qty
、Price
、およびHave
という変数がすべてのスクリプトに含まれていることがわかります。ここではinheritance
を使用する必要があります。
Food
クラス:
public class Food
{
protected Text Qty;
protected Text Price;
protected Text Have;
public void setQty(Text Qty)
{
this.Qty = Qty;
}
public void setPrice(Text Price)
{
this.Price = Price;
}
public void setHave(Text Have)
{
this.Have = Have;
}
public Text getQty()
{
return this.Qty;
}
public Text getPrice()
{
return this.Price;
}
public Text getHave()
{
return this.Have;
}
}
あなたは、あなたのMayonnaise
、Cheese
、Flour
とSugar
クラスを作成し、それらのすべてにFood
から継承することができます。
public class Mayonnaise : Food
{
}
public class Cheese : Food
{
}
public class Flour : Food
{
}
public class Sugar : Food
{
}
ここで、複数の配列を作成する方法について質問すると、以下のようになります。
const int Size = 4;
Mayonnaise[] mayonnaise;
Cheese[] cheese;
Flour[] flour;
Sugar[] sugar;
void Start()
{
mayonnaise = new Mayonnaise[Size];
cheese = new Cheese[Size];
flour = new Flour[Size];
sugar = new Sugar[Size];
//Create instance of of them
for (int i = 0; i < Size; i++)
{
mayonnaise[i] = new Mayonnaise();
cheese[i] = new Cheese();
flour[i] = new Flour();
sugar[i] = new Sugar();
}
mayonnaise[0].setHave(SomeTextComponent);
mayonnaise[0].getHave().text = "Some Text";
string text = mayonnaise[0].getHave().text;
}
このような 'GameObject'の配列を作ることができます。 'public GameObjec [] sampleObjets'だがあなたの質問を解決できない場合は、' Text'sのgameobjectsの配列を作成しようとする。あなたは 'Dictionary 'をチェックすることもできます。詳しい情報は:[link](http://www.dotnetperls.com/dictionary)です。 –
上記のコードを例に変換できますか? –
まず、私はあなたがなぜこのような構造をしたいのかを知る必要があります。たとえば、「Public GameObject Mayonnaise」や「Text Qty」、「Text Price」などを作成したのはなぜですか?クラスを作成することを検討する必要があります。例:public class Product {public Text Qty;パブリックテキスト価格;公開テキストがあります。 } 'オブジェクトを作成するよりも、例えば' public Product Mayonnaise = new Product(); Mayonnaise.Qty = //あなたのテキストコンポーネントなど[リンク](http://www.dotnetperls.com/class) –