回答編集履歴
1
追記
answer
CHANGED
@@ -2,4 +2,32 @@
|
|
2
2
|
これであれば、recoveryが100以上一度に増加しない限りは対応できるのではないかと思います。
|
3
3
|
|
4
4
|
recoveryが96 -> 97 -> 99 -> 101 -> 104と変化した場合、
|
5
|
-
recovery/100は0 -> 0 -> 0 -> 1 -> 1と変化するので、0から1に変化した時にhealthを加算するということです。
|
5
|
+
recovery/100は0 -> 0 -> 0 -> 1 -> 1と変化するので、0から1に変化した時にhealthを加算するということです。
|
6
|
+
|
7
|
+
こういう手もありかも
|
8
|
+
```C#
|
9
|
+
//プレイヤーの体力 0で死亡
|
10
|
+
int health;
|
11
|
+
|
12
|
+
//点数のようなもの。例えば敵を倒せば1増え、ボスを倒せば5増えるなど。
|
13
|
+
int recovery;
|
14
|
+
|
15
|
+
//ポイント3の敵を倒したときに実行
|
16
|
+
void Killed3pointEnemy()
|
17
|
+
{
|
18
|
+
Recovery(3);
|
19
|
+
}
|
20
|
+
|
21
|
+
//recoveryの値を変更するときに呼び出す
|
22
|
+
void Recovery(int increase)
|
23
|
+
{
|
24
|
+
health += 50 * (((recovery + increase) / 100) - (recovery / 100));
|
25
|
+
recovery += Increase;
|
26
|
+
|
27
|
+
if(health <= 0)
|
28
|
+
{
|
29
|
+
Destory(this.gameObject);
|
30
|
+
}
|
31
|
+
}
|
32
|
+
```
|
33
|
+
これなら、100以上増加しても対応できるかと思います。
|