質問編集履歴

2

あああ

2016/09/14 14:00

投稿

earnest_gay
earnest_gay

スコア615

test CHANGED
File without changes
test CHANGED
@@ -50,6 +50,8 @@
50
50
 
51
51
  思いついたのを今作ってみたのですが、要は使い分けとしてはこんな感じでいいですかね?
52
52
 
53
+ ※思いつきでやってみたのでロジックは完璧ではありません。
54
+
53
55
 
54
56
 
55
57
  ```ここに言語を入力

1

具体化

2016/09/14 14:00

投稿

earnest_gay
earnest_gay

スコア615

test CHANGED
File without changes
test CHANGED
@@ -41,3 +41,215 @@
41
41
  }
42
42
 
43
43
  ```
44
+
45
+
46
+
47
+ ふと気になったので質問してみたら結構回答つきました。
48
+
49
+
50
+
51
+ 思いついたのを今作ってみたのですが、要は使い分けとしてはこんな感じでいいですかね?
52
+
53
+
54
+
55
+ ```ここに言語を入力
56
+
57
+ package example;
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+ public class Character {
66
+
67
+ private String name;
68
+
69
+ private int lv,hp,mp,atk,def;
70
+
71
+ private int exp;//敵1体撃破時の経験値
72
+
73
+ private int monsterNum;//敵の数
74
+
75
+ private int expAll;//積算経験値
76
+
77
+
78
+
79
+ public Character(String name) {
80
+
81
+ //名前を決めてキャラを生成
82
+
83
+ //初期値は下記の通り
84
+
85
+ this.name = name;
86
+
87
+ this.lv = 1;
88
+
89
+ this.expAll = 0;
90
+
91
+ this.hp = 50;
92
+
93
+ this.mp = 15;
94
+
95
+ this.atk = 35;
96
+
97
+ this.def = 20;
98
+
99
+ }
100
+
101
+
102
+
103
+ //エンカウント
104
+
105
+ public void enk(int i) {
106
+
107
+ this.exp = 60;//敵1体が持つ経験値
108
+
109
+ this.monsterNum = i;//敵の数
110
+
111
+ this.expAll += (this.exp*this.monsterNum);//バトルで得た経験値を積算していく
112
+
113
+ }
114
+
115
+
116
+
117
+ //とりあえずsetterを使う場面として
118
+
119
+ public void setLv(int lv){
120
+
121
+ if(this.expAll > 500) {
122
+
123
+ this.lv = lv;
124
+
125
+ }
126
+
127
+ }
128
+
129
+
130
+
131
+ public static void main(String[] args) {
132
+
133
+ Character chara = new Character("rento");
134
+
135
+ System.out.println("名前:" + chara.name);
136
+
137
+ System.out.println("Lv:" + chara.lv);
138
+
139
+ System.out.println("HP:" + chara.hp);
140
+
141
+ System.out.println("MP:" + chara.mp);
142
+
143
+ System.out.println("攻撃力:" + chara.atk);
144
+
145
+ System.out.println("防御力:" + chara.def);
146
+
147
+
148
+
149
+ System.out.println(chara.name + "は敵と遭遇した。");
150
+
151
+ System.out.println(chara.name + "は、超メラゾーマを唱えた!");
152
+
153
+ System.out.println("敵に993,457,803,457,834のダメージを与えた!");
154
+
155
+ System.out.println("敵は二酸化炭素となった!!!");
156
+
157
+ chara.enk(1);
158
+
159
+ System.out.println(chara.name + "は" + (chara.exp*chara.monsterNum) + "というちっぽけな経験値を手に入れた。");
160
+
161
+ chara.setLv(2);
162
+
163
+
164
+
165
+ System.out.println(chara.name + "は魔物の群れに囲まれた。");
166
+
167
+ System.out.println(chara.name + "は、大地を砕き空を割った!!!");
168
+
169
+ System.out.println("敵は二酸化炭素になることすら許されない程のダメージを受けた!");
170
+
171
+ chara.enk(50);
172
+
173
+ System.out.println(chara.name + "は" + (chara.exp*chara.monsterNum) + "というそこそこの経験値を手に入れた。");
174
+
175
+ chara.setLv(2);
176
+
177
+
178
+
179
+ System.out.println("現在の総経験値は" + chara.expAll + "です。");
180
+
181
+
182
+
183
+ System.out.println("冒険後のステータスは下記の通りです。");
184
+
185
+ System.out.println("名前:" + chara.name);
186
+
187
+ System.out.println("Lv:" + chara.lv);
188
+
189
+ System.out.println("HP:" + chara.hp);
190
+
191
+ System.out.println("MP:" + chara.mp);
192
+
193
+ System.out.println("攻撃力:" + chara.atk);
194
+
195
+ System.out.println("防御力:" + chara.def);
196
+
197
+
198
+
199
+ }
200
+
201
+
202
+
203
+ }
204
+
205
+
206
+
207
+ ```
208
+
209
+
210
+
211
+ 名前:rento
212
+
213
+ Lv:1
214
+
215
+ HP:50
216
+
217
+ MP:15
218
+
219
+ 攻撃力:35
220
+
221
+ 防御力:20
222
+
223
+ rentoは敵と遭遇した。
224
+
225
+ rentoは、超メラゾーマを唱えた!
226
+
227
+ 敵に993,457,803,457,834のダメージを与えた!
228
+
229
+ 敵は二酸化炭素となった!!!
230
+
231
+ rentoは60というちっぽけな経験値を手に入れた。
232
+
233
+ rentoは魔物の群れに囲まれた。
234
+
235
+ rentoは、大地を砕き空を割った!!!
236
+
237
+ 敵は二酸化炭素になることすら許されない程のダメージを受けた!
238
+
239
+ rentoは3000というそこそこの経験値を手に入れた。
240
+
241
+ 現在の総経験値は3060です。
242
+
243
+ 冒険後のステータスは下記の通りです。
244
+
245
+ 名前:rento
246
+
247
+ Lv:2
248
+
249
+ HP:50
250
+
251
+ MP:15
252
+
253
+ 攻撃力:35
254
+
255
+ 防御力:20