回答編集履歴
3
スペルミス
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
//あとステップごとのスプライトを配列として保持
|
16
16
|
|
17
|
-
Sp
|
17
|
+
Sprite[] stepSplites = new Sprite[] {nomalSplite, superSplite, hyperSplite};
|
18
18
|
|
19
19
|
|
20
20
|
|
2
てきにあ立った場合段階的に減らすのに対応。あとMin Max 対応
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
コメントだとコード見づらくなるため回答に書きますが
|
2
2
|
|
3
|
-
つまり、アイテムをとるたびにパワーアップするが、敵に当たると
|
3
|
+
つまり、アイテムをとるたびにパワーアップするが、敵に当たると逆に段階的にパワーダウンさせる。
|
4
4
|
|
5
5
|
ステップを保持するものと各ステップごとのスプライトをクラスのメンバ変数として用意して、あとは、ステップと配列からMainSpriteRenderer.spriteにスプライトを設定する。
|
6
6
|
|
@@ -20,9 +20,9 @@
|
|
20
20
|
|
21
21
|
void OnTriggerExit2D(Collider2D other) {
|
22
22
|
|
23
|
-
if(other.tag == "item") step+
|
23
|
+
if(other.tag == "item") step = Math.Min(1, step + 1); // アイテムならステップを増やす(Max 1)
|
24
24
|
|
25
|
-
else if(other.tag == "Enemy") step = 0; // 敵に当たれば
|
25
|
+
else if(other.tag == "Enemy") step = Math.Max(0, step - 1); // 敵に当たれば逆にステップを減らす(Min 0)
|
26
26
|
|
27
27
|
MainSpriteRenderer.sprite = stepSplites[step]; // ステップのスプライトを適用
|
28
28
|
|
1
クラスのメンバー変数定義は型をちゃんと指定しないとだめ
test
CHANGED
@@ -10,11 +10,11 @@
|
|
10
10
|
|
11
11
|
// 現在どのステップかを保持
|
12
12
|
|
13
|
-
|
13
|
+
int step = 0;
|
14
14
|
|
15
15
|
//あとステップごとのスプライトを配列として保持
|
16
16
|
|
17
|
-
|
17
|
+
Splite[] stepSplites = new Sprite[] {nomalSplite, superSplite, hyperSplite};
|
18
18
|
|
19
19
|
|
20
20
|
|