質問編集履歴

6

URLの追加

2020/03/05 05:59

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -265,3 +265,7 @@
265
265
  情報が至らずご迷惑をおかけしました。
266
266
 
267
267
  すみません。
268
+
269
+
270
+
271
+ ![インスペクタとデバッグログの表示です](47fbcc2b46218d5d956ab56119b95629.png)

5

誤字

2020/03/05 05:59

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -258,7 +258,7 @@
258
258
 
259
259
  また、それ以前の部分についてはスケールによる振り向きが遅滞なく行われるので、rightフラグの設定には問題はないものと思われます。
260
260
 
261
- また、コルーチン内のspeedはパブリックメンバーのspeedと同じであることを確認し、それにインスペクタ上で10が格納されていることを確認いたしました。
261
+ それからコルーチン内のspeedはパブリックメンバーのspeedと同じであることを確認し、それにインスペクタ上で10が格納されていることを確認いたしました。
262
262
 
263
263
 
264
264
 

4

誤字。

2020/03/05 05:21

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -200,7 +200,7 @@
200
200
 
201
201
  //二秒間突進して終了
202
202
 
203
- Debug.Log("コルーチン終了");---------------New!
203
+ Debug.Log("コルーチン終了");//---------------New!
204
204
 
205
205
  yield break;
206
206
 

3

書式改善

2020/03/05 05:20

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -242,7 +242,15 @@
242
242
 
243
243
 
244
244
 
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
245
- **追記**
253
+ ### **追記**
246
254
 
247
255
  コルーチンの始まりでチャージタイムを初期化するようにして、デバッグログに移動、コルーチン終了を加えました。(Newで示してあります)
248
256
 

2

情報の追加

2020/03/05 05:19

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -168,40 +168,46 @@
168
168
 
169
169
  IEnumerator Charge(int xVector)
170
170
 
171
+ {   chargeTime = 0;//---------------New!
172
+
173
+
174
+
175
+ yield return new WaitForSeconds(3.0f);
176
+
177
+ Debug.Log("コルーチン開始");
178
+
179
+ //三秒待って処理開始。
180
+
181
+ anim.SetBool("walk", true);
182
+
183
+ rb.velocity = new Vector2(xVector * speed, -gravity);
184
+
185
+
186
+
187
+        Debug.Log("移動");//----------New!
188
+
189
+
190
+
191
+ //アニメーションを移動に遷移させ、さらに引数の方向へ設定したスピードで動かす。
192
+
193
+ chargeTime += Time.deltaTime;
194
+
195
+
196
+
197
+ if (chargeTime > 3.0f)
198
+
171
199
  {
172
200
 
173
-
174
-
175
- yield return new WaitForSeconds(3.0f);
176
-
177
- Debug.Log("コルーチン開始");
178
-
179
- //三秒待って処理開始。
180
-
181
- anim.SetBool("walk", true);
182
-
183
- rb.velocity = new Vector2(xVector * speed, -gravity);
184
-
185
- //アニメーションを移動に遷移させ、さらに引数の方向へ設定したスピードで動かす。
186
-
187
- chargeTime += Time.deltaTime;
188
-
189
- if (chargeTime > 2.0f)
190
-
191
- {
192
-
193
- //二秒間突進して終了
201
+ //二秒間突進して終了
202
+
194
-
203
+ Debug.Log("コルーチン終了");---------------New!
204
+
195
- yield break;
205
+ yield break;
196
-
197
- }
198
-
199
-
200
-
201
-
202
206
 
203
207
  }
204
208
 
209
+ }
210
+
205
211
  }
206
212
 
207
213
  ```
@@ -231,3 +237,23 @@
231
237
  至らぬ点がありましたら追記修正させていただきます。
232
238
 
233
239
  どうぞよろしくお願いします。
240
+
241
+
242
+
243
+
244
+
245
+ **追記**
246
+
247
+ コルーチンの始まりでチャージタイムを初期化するようにして、デバッグログに移動、コルーチン終了を加えました。(Newで示してあります)
248
+
249
+ 各デバッグログの動作状況としては、コルーチン開始、移動は動作するものの、コルーチン終了のデバッグが動作していません。
250
+
251
+ また、それ以前の部分についてはスケールによる振り向きが遅滞なく行われるので、rightフラグの設定には問題はないものと思われます。
252
+
253
+ また、コルーチン内のspeedはパブリックメンバーのspeedと同じであることを確認し、それにインスペクタ上で10が格納されていることを確認いたしました。、
254
+
255
+
256
+
257
+ 情報が至らずご迷惑をおかけしました。
258
+
259
+ すみません。

1

コードの間違いを訂正

2020/03/05 05:18

投稿

cushionA
cushionA

スコア90

test CHANGED
File without changes
test CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
  {
42
42
 
43
- #region//インスペクターで設定する
43
+ #region//インスペクターで設定する
44
44
 
45
45
  [Header("移動速度")] public float speed;
46
46
 
@@ -52,7 +52,7 @@
52
52
 
53
53
  #endregion
54
54
 
55
-
55
+ float playerPos;
56
56
 
57
57
  #region//プライベート変数
58
58
 
@@ -72,7 +72,7 @@
72
72
 
73
73
 
74
74
 
75
-
75
+
76
76
 
77
77
  #endregion
78
78
 
@@ -100,7 +100,7 @@
100
100
 
101
101
  {
102
102
 
103
- anim.SetBool("walk",false);
103
+ anim.SetBool("walk", false);
104
104
 
105
105
  //デフォルトの立ちモーションに遷移。
106
106
 
@@ -110,7 +110,7 @@
110
110
 
111
111
  playerPos = rbs.position.x;
112
112
 
113
-
113
+
114
114
 
115
115
  if (playerPos - transform.position.x > 0)
116
116
 
@@ -136,72 +136,74 @@
136
136
 
137
137
  if (right)
138
138
 
139
- {
139
+ {
140
-
140
+
141
- transform.localScale = new Vector3(1, 1, 1);
141
+ transform.localScale = new Vector3(1, 1, 1);
142
-
142
+
143
- StartCoroutine(Charge(1));
143
+ StartCoroutine(Charge(1));
144
-
144
+
145
-          //プレイヤーの向きにアニメーションを反転させ、引数を入れてコルーチン開始。
145
+ //プレイヤーの向きにアニメーションを反転させ、引数を入れてコルーチン開始。
146
-
146
+
147
- }
147
+ }
148
-
148
+
149
- //プレイヤー左にいる
149
+ //プレイヤー左にいる
150
-
150
+
151
- else
151
+ else
152
-
152
+
153
- {
153
+ {
154
-
154
+
155
- transform.localScale = new Vector3(-1, 1, 1);
155
+ transform.localScale = new Vector3(-1, 1, 1);
156
-
156
+
157
- StartCoroutine(Charge(-1));
157
+ StartCoroutine(Charge(-1));
158
-
158
+
159
-          //プレイヤーの向きにアニメーションを反転させ、引数を入れてコルーチン開始。
159
+ //プレイヤーの向きにアニメーションを反転させ、引数を入れてコルーチン開始。
160
-
160
+
161
- }
161
+ }
162
+
162
-
163
+ }
164
+
163
-
165
+ }
164
-
166
+
167
+
168
+
165
- IEnumerator Charge(int xVector)
169
+ IEnumerator Charge(int xVector)
166
-
167
- {
168
-
169
-
170
-
171
- yield return new WaitForSeconds(3.0f);
172
-
173
- Debug.Log("コルーチン開始");
174
-
175
-     //三秒待って処理開始。
176
-
177
- anim.SetBool("walk", true);
178
-
179
- rb.velocity = new Vector2(xVector * speed, -gravity);
180
-
181
-     //アニメーションを移動に遷移させ、さらに引数の方向へ設定したスピードで動かす。
182
-
183
- chargeTime += Time.deltaTime;
184
-
185
- if(chargeTime > 2.0f)
186
170
 
187
171
  {
188
172
 
173
+
174
+
175
+ yield return new WaitForSeconds(3.0f);
176
+
177
+ Debug.Log("コルーチン開始");
178
+
179
+ //三秒待って処理開始。
180
+
181
+ anim.SetBool("walk", true);
182
+
183
+ rb.velocity = new Vector2(xVector * speed, -gravity);
184
+
185
+ //アニメーションを移動に遷移させ、さらに引数の方向へ設定したスピードで動かす。
186
+
187
+ chargeTime += Time.deltaTime;
188
+
189
+ if (chargeTime > 2.0f)
190
+
191
+ {
192
+
189
-     //二秒間突進して終了
193
+ //二秒間突進して終了
190
-
194
+
191
- yield break;
195
+ yield break;
196
+
197
+ }
198
+
199
+
200
+
201
+
192
202
 
193
203
  }
194
204
 
195
-
196
-
197
-
198
-
199
- }
200
-
201
205
  }
202
206
 
203
- }
204
-
205
207
  ```
206
208
 
207
209