やりたいこと
unity内で配列を用いてif文の条件式を書きたい。
前提条件
前提条件として、このスクリプトをオブジェクトにアタッチし、スクリプトをアタッチしたオブジェクトのinspectorの中でspriteの値を決めるとその配列の数だけspriteを関連付けられるようにする。
具体的な説明
まず、
public Sprite[] 変数;//この変数は何でも良い
private int count;
とし、 void Start()の中で、count=0と決める。
その後、void Update()の中で、
if(count=0){処理}の時と、
if(count=1 <= inspectorで指定した要素の数-1) {処理}の時と、
if(count=inspectorで指定した要素の数の時) {処理}
の時で処理を分けたい。int型はbool型に暗黙的に変換できないみたいなエラーが出るので、この範囲でifを指定できるコードの書き方を知っていましたら教えていただけますとありがたいです。
if文での範囲指定方法というよりも、inspector内で設定したspriteの要素の数の値をif文の条件式で使う方法を教えていただきたいです。決まった値ではなく、動的な値で対応できるようにしたいです。
void Start()の中で、
inspectorのこのスクリプトで設定してある要素をGetComponentなどで取得してif文の条件式の中で使うなどを考えています。
具体的例
具体的な説明が足りていなくて申し訳ございません。事前にinspectorの中で指定した配列のサイズをif文の条件式で使いたいということです。例えば、この画像で言うと、spriteが4になっているため、配列は4つでき、4つのspriteを関連つけられます。 そこで、if(count=0)の時、 if(count=1以上count=3以下)の時、 if(count=4)の時、 という条件分けがされるようにしたいということです。この条件式はやりたいことであって実際に使用するコードを示すものではありません。このinspector内の4の値を変えたらそれによって条件式も変わるようにしたいといった感じです。
もう一つ例として、
例: inspector内のspriteを6とした場合は、6個の配列ができ、6個のspriteを関連つけさせられるため、
if(count=0)の時、 if(count=1以上count=5以下)の時、 if(count=6)で条件分けされるようにする。
という感じです。
コードでの書き方を知っていましたら何卒よろしくお願いいたします。
何卒よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー