回答編集履歴

2

追記2

2017/09/12 06:09

投稿

fiveHundred
fiveHundred

スコア9803

test CHANGED
@@ -155,3 +155,67 @@
155
155
  }
156
156
 
157
157
  ```
158
+
159
+
160
+
161
+ ---
162
+
163
+ 追記2:
164
+
165
+
166
+
167
+ Count.cs
168
+
169
+ ```C#
170
+
171
+ bool deleteFullRows()
172
+
173
+ {
174
+
175
+ for (int y = 0; y < Grid.h; ++y)
176
+
177
+ {
178
+
179
+ if (!Grid.isRowFull(y))
180
+
181
+ {
182
+
183
+ return false;
184
+
185
+ }
186
+
187
+ }
188
+
189
+ return true;
190
+
191
+ }
192
+
193
+ ```
194
+
195
+ 以上のソースを、以下のようにしてみてください。
196
+
197
+ ```C#
198
+
199
+ bool deleteFullRows()
200
+
201
+ {
202
+
203
+ for (int y = 0; y < Grid.h; ++y)
204
+
205
+ {
206
+
207
+ if (Grid.isRowFull(y))
208
+
209
+ {
210
+
211
+ return true;
212
+
213
+ }
214
+
215
+ }
216
+
217
+ return false;
218
+
219
+ }
220
+
221
+ ```

1

修正案を追記

2017/09/12 06:09

投稿

fiveHundred
fiveHundred

スコア9803

test CHANGED
@@ -33,3 +33,125 @@
33
33
  }
34
34
 
35
35
  ```
36
+
37
+
38
+
39
+ ---
40
+
41
+ 追記:
42
+
43
+ 修正案です。Countは1つしか存在しない前提で書きます。
44
+
45
+
46
+
47
+ Count.cs
48
+
49
+ ```C#
50
+
51
+ public static bool deleteFullRows()
52
+
53
+ {
54
+
55
+ // ↓ 元に戻す
56
+
57
+ bool deleteFullRows()
58
+
59
+ {
60
+
61
+
62
+
63
+ // …(中略)
64
+
65
+
66
+
67
+ void Update () {
68
+
69
+ // ↓ 外部から実行するように変更
70
+
71
+ public void countUp() {
72
+
73
+ ```
74
+
75
+
76
+
77
+ Group.cs
78
+
79
+ ```C#
80
+
81
+ public class Group : MonoBehaviour
82
+
83
+ {
84
+
85
+ private Vector3 screenPoint;
86
+
87
+ private Vector3 offset;
88
+
89
+ // ↓ 変数追加
90
+
91
+ public class Group : MonoBehaviour
92
+
93
+ {
94
+
95
+ private Vector3 screenPoint;
96
+
97
+ private Vector3 offset;
98
+
99
+ private Count count;
100
+
101
+
102
+
103
+ // …(中略)
104
+
105
+
106
+
107
+ transform.position = Grid.roundVec2(currentPosition);
108
+
109
+ //追加
110
+
111
+ Count.deleteFullRows();
112
+
113
+ //横列と縦列を消去
114
+
115
+ Grid.deleteFullRows();
116
+
117
+ Grid.deleteFullLines();
118
+
119
+ // ↓ deleteFullRows()ではなく、countUp()を呼び出す
120
+
121
+ transform.position = Grid.roundVec2(currentPosition);
122
+
123
+ //追加
124
+
125
+ count.countUp();
126
+
127
+ //横列と縦列を消去
128
+
129
+ Grid.deleteFullRows();
130
+
131
+ Grid.deleteFullLines();
132
+
133
+
134
+
135
+ // …(中略)
136
+
137
+
138
+
139
+ void Start()
140
+
141
+ {
142
+
143
+
144
+
145
+ }
146
+
147
+ // ↓ Countを取得
148
+
149
+ void Start()
150
+
151
+ {
152
+
153
+ count = FindObjectOfType<Count>();
154
+
155
+ }
156
+
157
+ ```