Unity2D で開発をしています。
UI の Slider の value の値を減らすメソッドを作りましたが、value が狙った値にならず困っています。
初期値はvalueの値は1です。このメソッド一回で、valueの値から0.2fずつ減らします。
このメソッドの引数は0.2fで、このメソッド自体を定期的に呼び出しています。
結果、変数 value の値が1→0.8→0.6→0.4→0.2と減っていきますが、その次は0ではなく2.980232E-08となってしまいます。
また、別ケースとして引数を0.3fとしたとき、value の値が1→0.7→0.4と減っていきますが、その次は0.1ではなく、0.09999996 となってしまいます。
どうすれば2.980232E-08ではなく0となるでしょうか。
また、0.1ではなく、0.09999996 となるでしょうか
メソッドは以下の通りです。
よろしくお願いします。
c#
1 // スライダー反映処理 2 public void upDownHpValue(float upDownValue) { 3 4 // スライダーオブジェクトの取得 5 Slider hpSlider = HpSlider.GetComponent<Slider>(); 6 7 // 現在のvalueの値取得 8 float valueNow = HpSlider.GetComponent<Slider>().value; 9 10 // valueに変化量反映 11 valueNow = valueNow - upDownValue; 12 13 // ゲージに変化後の値を設定 14 hpSlider.value = valueNow; 15 16 } 17
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。