回答編集履歴

3

scheduleUpdateについて追記

2020/02/21 05:20

投稿

mingos
mingos

スコア4190

test CHANGED
@@ -202,7 +202,7 @@
202
202
 
203
203
  ```cpp
204
204
 
205
- bool GameButtleScene::init(const Chosen& chosen) {
205
+ bool GameButtleScene::initWithChosen(const Chosen& chosen) {
206
206
 
207
207
  /*
208
208
 
@@ -237,3 +237,59 @@
237
237
  }
238
238
 
239
239
  ```
240
+
241
+
242
+
243
+ ### ScheduleUpdate
244
+
245
+
246
+
247
+ initWithChosen()の中に書くだけです。
248
+
249
+ もちろん、void update(float dt)も用意しなければいけません。
250
+
251
+
252
+
253
+ ```cpp
254
+
255
+ class GameButtleScene : public Scene {
256
+
257
+ public:
258
+
259
+ void update(float dt);
260
+
261
+ }
262
+
263
+
264
+
265
+ bool GameButtleScene::initWithChosen(const Chosen& chosen) {
266
+
267
+ if(!Scene::init()) {
268
+
269
+ return false;
270
+
271
+ }
272
+
273
+ mChosen = chosen;
274
+
275
+
276
+
277
+ // 初期化処理
278
+
279
+ scheduleUpdate();
280
+
281
+
282
+
283
+ return true;
284
+
285
+ }
286
+
287
+
288
+
289
+ void GameButtleScene::update(float dt) {
290
+
291
+
292
+
293
+ }
294
+
295
+ ```

2

物理エンジンの初期化について追記

2020/02/21 05:20

投稿

mingos
mingos

スコア4190

test CHANGED
@@ -173,3 +173,67 @@
173
173
 
174
174
 
175
175
  ```
176
+
177
+
178
+
179
+ ---
180
+
181
+
182
+
183
+ ## 【追記】
184
+
185
+
186
+
187
+ ### 物理エンジンを使用する場合の初期化
188
+
189
+
190
+
191
+ 物理エンジンを使用する際に使用する、引数なしのScene::createWithPhysics()のソースを見ると、
192
+
193
+ Scene::initWithPhysics()を呼び出していますので、それを真似すればOKです。
194
+
195
+
196
+
197
+ つまり、GameButtleScene::initWithChosen()の中でScene::init()の代わりに、
198
+
199
+ Scene::initWithPhysics()を使うだけで物理エンジンに対応したシーンになります。
200
+
201
+
202
+
203
+ ```cpp
204
+
205
+ bool GameButtleScene::init(const Chosen& chosen) {
206
+
207
+ /*
208
+
209
+ // 物理エンジンを使わない場合
210
+
211
+ if(!Scene::init()) {
212
+
213
+ return false;
214
+
215
+ }
216
+
217
+ */
218
+
219
+
220
+
221
+ // 物理エンジンを使用する場合
222
+
223
+ if(!Scene::initWithPhysics()) {
224
+
225
+ return false;
226
+
227
+ }
228
+
229
+
230
+
231
+ ...
232
+
233
+
234
+
235
+ return true;
236
+
237
+ }
238
+
239
+ ```

1

コメントを追記

2020/02/21 05:14

投稿

mingos
mingos

スコア4190

test CHANGED
@@ -28,6 +28,10 @@
28
28
 
29
29
 
30
30
 
31
+ #include "cocos2d.h"
32
+
33
+
34
+
31
35
  struct Chosen {
32
36
 
33
37
  // 任意のパラメータ
@@ -42,7 +46,7 @@
42
46
 
43
47
 
44
48
 
45
- * HomeScene任意の場所
49
+ * HomeScene任意の場所(GameButtleSceneに遷移する処理)
46
50
 
47
51
  ```
48
52
 
@@ -66,7 +70,7 @@
66
70
 
67
71
  // パラメータを渡してシーンを遷移
68
72
 
69
- Scene* scene = GameButtleScene::createScene(chosen);
73
+ auto scene = GameButtleScene::createScene(chosen);
70
74
 
71
75
  auto transition = TransitionFade::create(1.0f, scene);
72
76
 
@@ -107,6 +111,10 @@
107
111
 
108
112
 
109
113
  private:
114
+
115
+ // とりあえずメンバ変数にしておきますが
116
+
117
+ // initWithChosen()の中だけでしか使わない場合はメンバ変数にする必要はなし
110
118
 
111
119
  Chosen mChosen;
112
120