
###前提・実現したいこと
※ソースコードは伝え易くす為、簡略化してます
Unityでゲームを作っていて、damにatt分の数値を追加する処理を書いているのですが(普通に足さずにこのような繰り返しとコルーチンを使った書き方をしているのは目視できるようにゆっくり数値を追加したいからです。)、必要分のwhile文を書くとコンパクトじゃないので、三つのwhile文を一つにまとめたいと思っています。
しかし、A,B,Cそれぞれで繰り返す回数が違うので、どうやってまとめればよいか分からず悩んでいます。
説明が不自由ですが、ご指摘・ご回答頂けると幸いです。よろしくお願いします。
###発生している問題・エラーメッセージ
なし。
###該当のソースコード
C#
1int damA = 0; 2int damB = 0; 3int damC = 0; 4int attA = 3;//数値は変動する 5int attB = 5;//数値は変動する 6int attC = 10;//数値は変動する 7 8 void Update() 9 { 10 if (Input.anyKey) 11 { 12 //コルーチンを実行 13 StartCoroutine("AddDamage); 14 } 15 } 16 17IEnumerator AddDamage() 18 { 19 int a = 0; 20 //attA分の数値を足す 21 while (a <= attA) 22 { 23 damA ++; 24 a ++; 25 yield return new WaitForSeconds(0.2f); 26 27 } 28 int b = 0; 29 while (b <= attB) 30 { 31 damB ++; 32 b ++; 33 yield return new WaitForSeconds(0.2f); 34 35 } 36 int c = 0; 37 while (c <= attC) 38 { 39 damC ++; 40 c ++; 41 yield return new WaitForSeconds(0.2f); 42 43 } 44 } 45 46
###試したこと
ネットで調べましたがこのような件が少ないせいか望んでいるような回答を見出せませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
Unity 2017.2.0f3 (64-bit)
C#

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/05 11:32
退会済みユーザー
2017/12/05 12:43