簡単なゲームを作っているのですが、コードの色を変える方法がわかりません。子要素の色を変更するスクリプトを添付する予定の親ゲームオブジェクトがあります。
たとえば、私はこれを持っています:
Parent:A
Childs in A = 1,2;
2つの要素すべてを取得し、最初の子の色を黒に、2番目の子の色を白に変更したいと思います。
色を変えるときにタグを変えたいので、子供にランダムな色を付けることができます。
その親の2人の子供にプロパティを変更させる方法がわかりません。
子に1と2の名前を付けてから、ゲームオブジェクト名1の子のコードを調べて、colorプロパティを変更することはできますか?
コードの以下の部分は、GetPropertyメソッドの簡単な使用例です。以下に示すように、MyGetPropertyとMySetPropertyを使用するだけです。文字列によって参照される変数はプロパティでなければならないことに注意してください。
public class Parent {
private int child1 = 0;
private int child2 = 0;
public int iChild1 {
get {
return child1;
}
set {
child1 = value;
}
}
public int iChild2 {
get {
return child2;
}
set {
child2 = value;
}
}
public void MainMethod() {
MySetProperty("iChild1",1);
MySetProperty("iChild2",2);
string strOutput = String.Format("iChild1 = {0} iChild2 = {1}",MyGetPrperty("iChild1"), MyGetPrperty("iChild2"));
}
public object MyGetProperty(string strPropName)
{
Type myType = typeof(Parent);
PropertyInfo myPropInfo = myType.GetProperty(strPropName);
return myPropInfo.GetValue(this, null);
}
public void MySetProperty(string strPropName, object value)
{
Type myType = typeof(Parent);
PropertyInfo myPropInfo = myType.GetProperty(strPropName);
myPropInfo.SetValue(this, value, null);
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加