質問編集履歴

1

追加で試してみたこと

2021/08/18 03:34

投稿

MiuMiu0526
MiuMiu0526

スコア2

test CHANGED
File without changes
test CHANGED
@@ -133,3 +133,85 @@
133
133
  とコードを書き加えてみたのですが歩き時と同じスピードで走ります。
134
134
 
135
135
  ダッシュ中には倍の速さになるように速度設定するにはどうすればよいですか?
136
+
137
+
138
+
139
+ 追記
140
+
141
+
142
+
143
+ 別途で「runspeed = 6;」を用意し、ダッシュ中はこの「runspeed」に切り替わるように下記のコード
144
+
145
+ ```C#
146
+
147
+ コード
148
+
149
+ if (Input.GetButton("Run"))
150
+
151
+ {
152
+
153
+ speed = runspeed;
154
+
155
+ if (Mathf.Abs(velx) > 4)
156
+
157
+ {
158
+
159
+ if (velx > 4.0f)
160
+
161
+ {
162
+
163
+ rb2d.velocity = new Vector2(8.0f, vely);
164
+
165
+ }
166
+
167
+ if (velx < 4.0f)
168
+
169
+ {
170
+
171
+ rb2d.velocity = new Vector2(8.0f, vely);
172
+
173
+ }
174
+
175
+ }
176
+
177
+ }
178
+
179
+ else
180
+
181
+ {
182
+
183
+ if (Mathf.Abs(velx) > 4)
184
+
185
+ {
186
+
187
+ if (velx > 4.0f)
188
+
189
+ {
190
+
191
+ rb2d.velocity = new Vector2(4.0f, vely);
192
+
193
+ }
194
+
195
+ if (velx < 4.0f)
196
+
197
+ {
198
+
199
+ rb2d.velocity = new Vector2(4.0f, vely);
200
+
201
+ }
202
+
203
+
204
+
205
+ }
206
+
207
+ }
208
+
209
+ ```
210
+
211
+ にしてみたところ、
212
+
213
+ X軸+向きの移動時:最大速度到達までの時間が遅くなったが、正しく動作してくれた。
214
+
215
+ X軸-向きの移動時:speedが3.0になったら0にリセットされてしまう。ダッシュ時、+方向に動いてしまう。
216
+
217
+ といった感じになりました。