回答編集履歴
1
内容修正
test
CHANGED
@@ -1,45 +1,27 @@
|
|
1
|
-
|
1
|
+
盤面と駒台を勘違いしていたので回答をごそっと編集。(前の回答は、編集履歴を参照ください。)
|
2
2
|
|
3
|
+
ただ、基本的な考えは変わらず。
|
4
|
+
|
5
|
+
盤面、駒台に存在する駒オブジェクトのリストと、
|
6
|
+
|
7
|
+
プレイヤー、プレイヤーが操作可能な駒オブジェクトのリストという概念が存在すれば。
|
8
|
+
|
3
|
-
駒の数
|
9
|
+
駒の数自体を管理する必要はなく、必要な時にリストから集計する形でよいと考えています。
|
4
10
|
|
5
11
|
|
6
12
|
|
7
|
-
駒
|
13
|
+
1.プレイヤーが、操作可能な駒のリストを持っているとして、
|
8
14
|
|
9
|
-
|
15
|
+
そのリストの中から、1つの駒オブジェクトを選択。
|
10
16
|
|
17
|
+
2.ゲームの進行を管理するゲームマスタークラスがいるとして、
|
18
|
+
|
19
|
+
ゲームマスターは、その駒オブジェクトが、盤面、駒台のどちらに含まれているか確認、
|
20
|
+
|
21
|
+
駒を配置できる位置を返却。
|
22
|
+
|
11
|
-
|
23
|
+
3.プレイヤーは、その位置の中から駒を置く場所を指定する。
|
12
24
|
|
13
25
|
|
14
26
|
|
15
|
-
また、プレイヤーに相当するクラスがあるのであれば、
|
16
|
-
|
17
|
-
|
27
|
+
といった流れを考えていました。
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
プレイヤーは、自分が操作可能な駒オブジェクトのリストを持っているものと思います。
|
22
|
-
|
23
|
-
自分が持つリストには、自分側の駒の情報しかないので、
|
24
|
-
|
25
|
-
駒台よりも集計が簡潔になると思います。
|
26
|
-
|
27
|
-
相手プレイヤーの駒数が知りたい場合は、相手に問い合わせればよいだけです。
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
集計情報の返却には、HashMapが適切だと思います。※主に情報表示用として使う場合
|
32
|
-
|
33
|
-
ただし、Keyには、クラスオブジェクトではなく、文字列を使用します。
|
34
|
-
|
35
|
-
なぜかというと、将棋だと、駒が成る可能性があるためです。
|
36
|
-
|
37
|
-
成った状態用のクラスを用意するという手もありますが、
|
38
|
-
|
39
|
-
その他の制御が面倒くさくなると思います。(成った駒が相手にとられた場合とか)
|
40
|
-
|
41
|
-
駒内でフラグを管理し、その状態によって、返す値を変えるが適切だと思います。
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
適当に考えただけなので、突っ込みどころがあれば、指摘してください。
|