質問編集履歴

4

プログラム修正

2019/10/26 09:11

投稿

orochinodoppo
orochinodoppo

スコア14

test CHANGED
File without changes
test CHANGED
@@ -20,11 +20,13 @@
20
20
 
21
21
 
22
22
 
23
+ ```
24
+
23
25
  // プレイヤークラス
24
26
 
25
27
  public class Player : MonoBehaviour {
26
28
 
27
-  Enemy enemy;
29
+ Enemy enemy;
28
30
 
29
31
  SystemManagement system;
30
32
 
@@ -72,7 +74,11 @@
72
74
 
73
75
  }
74
76
 
77
+ ```
75
78
 
79
+
80
+
81
+ ```
76
82
 
77
83
  // 敵クラス
78
84
 
@@ -96,7 +102,9 @@
96
102
 
97
103
  }
98
104
 
105
+ ```
99
106
 
107
+ ```
100
108
 
101
109
  // システムマネジメントクラス
102
110
 
@@ -115,3 +123,5 @@
115
123
  }
116
124
 
117
125
  }
126
+
127
+ ```

3

空白追加

2019/10/26 09:11

投稿

orochinodoppo
orochinodoppo

スコア14

test CHANGED
File without changes
test CHANGED
@@ -24,7 +24,7 @@
24
24
 
25
25
  public class Player : MonoBehaviour {
26
26
 
27
- Enemy enemy;
27
+  Enemy enemy;
28
28
 
29
29
  SystemManagement system;
30
30
 

2

プログラム追加

2019/10/26 09:08

投稿

orochinodoppo
orochinodoppo

スコア14

test CHANGED
File without changes
test CHANGED
@@ -10,14 +10,108 @@
10
10
 
11
11
  敵のHPを減らす処理や敵のHPが0になったら消滅させる処理はどこに書けばいいのかわからなくなります。
12
12
 
13
- プレイヤーが攻撃したからプレイヤークラスに記述するのか
13
+ 案① プレイヤーが攻撃したからプレイヤークラスに記述するのか
14
14
 
15
- 敵のHPや存在に関するから敵クラスに記述するのか
15
+ 案② 敵のHPや存在に関するから敵クラスに記述するのか
16
16
 
17
- それともまた別のクラスを用意するのか
17
+ 案③ それともまた別のクラスを用意するのか
18
+
19
+ ちょっと伝わりにくいかもしれません。すみません。
18
20
 
19
21
 
20
22
 
21
- 今はシステムマネジメントというクラスを作って全部そこに書いています。
23
+ // プレイヤークラス
22
24
 
25
+ public class Player : MonoBehaviour {
26
+
27
+ Enemy enemy;
28
+
29
+ SystemManagement system;
30
+
31
+
32
+
33
+ void Start() {
34
+
35
+ enemy = GameObject.Find("Enemy").GetComponent<Enemy>();
36
+
37
+ system = GameObject.Find("SystemManagement")
38
+
39
+ .GetComponent<SystemManagement>();
40
+
41
+ }
42
+
43
+
44
+
23
- みなさんの意見をお聞きしたいです。よろしくお願い致します。
45
+ // ボタンクリックしたら実行される
46
+
47
+ void onClick() {
48
+
49
+ // 案①
50
+
51
+ enemy.hp = enemy.hp - 5;
52
+
53
+ if (enemy.hp < 0) {
54
+
55
+ Destroy(enemy.gameObject);
56
+
57
+ }
58
+
59
+
60
+
61
+ // 案②(enemyクラスでHPが0以下になったら消滅する。)
62
+
63
+ enemy.hp = enemy.hp - 5;
64
+
65
+
66
+
67
+ // 案③
68
+
69
+ system.attack(enemy);
70
+
71
+ }
72
+
73
+ }
74
+
75
+
76
+
77
+ // 敵クラス
78
+
79
+ public class Enemy : MonoBehaviour {
80
+
81
+ public int hp = 10;
82
+
83
+
84
+
85
+ void Update() {
86
+
87
+ // 案②
88
+
89
+ if (hp < 0) {
90
+
91
+ Destroy(this.gameObject);
92
+
93
+ }
94
+
95
+ }
96
+
97
+ }
98
+
99
+
100
+
101
+ // システムマネジメントクラス
102
+
103
+ public class SystemManagement : MonoBehaviour {
104
+
105
+ public void attack(Enemy enemy) {
106
+
107
+ enemy.hp = enemy.hp - 5;
108
+
109
+ if (enemy.hp < 0) {
110
+
111
+ Destroy(enemy.gameObject);
112
+
113
+ }
114
+
115
+ }
116
+
117
+ }

1

タイトル

2019/10/26 09:02

投稿

orochinodoppo
orochinodoppo

スコア14

test CHANGED
@@ -1 +1 @@
1
- オブジェト指向?よる質問
1
+ 処理をどのラス記述すればいいかわからない
test CHANGED
File without changes