質問編集履歴

3

自己解決の際の修正の仕方が間違っていたため修正。

2023/05/13 09:52

投稿

UngerFlog
UngerFlog

スコア2

test CHANGED
@@ -1 +1 @@
1
- 【解決済み】一時的にNavMeshAgentの追跡および移動を強制的に止める方法(敵がリロード中は停止させたい)
1
+ 一時的にNavMeshAgentの追跡および移動を強制的に止める方法(敵がリロード中は停止させたい)
test CHANGED
@@ -327,35 +327,3 @@
327
327
  また、else if (Detection == "ReloadingNow")として
328
328
  このステートに入った際は自分自身のポジションを参照させることで移動を止めようとしていた。
329
329
 
330
-
331
- ### 【追記】自己解決したためその内容を追記
332
-
333
- 改めてGunnerクラスのソースを見直し、if (deadover == false && NowReloading == false)の箇所と
334
- if (Reloadjudgetime == 200.0f)の箇所を調整することで意図していた処理を行うことに成功しました。
335
-
336
- ```
337
- //if (deadover == false && NowReloading == false)の箇所に追加したものです
338
- else if (Detection == "ReloadingNow")
339
- {
340
- //リロード中もとりあえず止まっている想定
341
- GetComponent<NavMeshAgent>().isStopped = true;
342
- }
343
-
344
- //中略します
345
-
346
- // リロード判定持続時間を超えたらFlaseにする
347
- if (Reloadjudgetime == 550.0f)
348
- {
349
- //リロード判定継続時間判定をFalse
350
- Reloadjudge = false;
351
- //リセットも忘れずに
352
- Reloadjudgetime = 0.0f;
353
- //ここでリチャージもリセット
354
- Attacktime = 0.0f;
355
- //リロードが終わったので動いていい
356
- GetComponent<NavMeshAgent>().isStopped = false;
357
- GetComponent<NavMeshAgent>().speed = 1f;
358
- NowReloading = false;
359
- Detection = "Chaseing";
360
- }
361
- ```

2

自己解決したため、そちらの内容について追記

2023/05/13 08:06

投稿

UngerFlog
UngerFlog

スコア2

test CHANGED
@@ -1 +1 @@
1
- 一時的にNavMeshAgentの追跡および移動を強制的に止める方法(敵がリロード中は停止させたい)
1
+ 【解決済み】一時的にNavMeshAgentの追跡および移動を強制的に止める方法(敵がリロード中は停止させたい)
test CHANGED
@@ -327,3 +327,35 @@
327
327
  また、else if (Detection == "ReloadingNow")として
328
328
  このステートに入った際は自分自身のポジションを参照させることで移動を止めようとしていた。
329
329
 
330
+
331
+ ### 【追記】自己解決したためその内容を追記
332
+
333
+ 改めてGunnerクラスのソースを見直し、if (deadover == false && NowReloading == false)の箇所と
334
+ if (Reloadjudgetime == 200.0f)の箇所を調整することで意図していた処理を行うことに成功しました。
335
+
336
+ ```
337
+ //if (deadover == false && NowReloading == false)の箇所に追加したものです
338
+ else if (Detection == "ReloadingNow")
339
+ {
340
+ //リロード中もとりあえず止まっている想定
341
+ GetComponent<NavMeshAgent>().isStopped = true;
342
+ }
343
+
344
+ //中略します
345
+
346
+ // リロード判定持続時間を超えたらFlaseにする
347
+ if (Reloadjudgetime == 550.0f)
348
+ {
349
+ //リロード判定継続時間判定をFalse
350
+ Reloadjudge = false;
351
+ //リセットも忘れずに
352
+ Reloadjudgetime = 0.0f;
353
+ //ここでリチャージもリセット
354
+ Attacktime = 0.0f;
355
+ //リロードが終わったので動いていい
356
+ GetComponent<NavMeshAgent>().isStopped = false;
357
+ GetComponent<NavMeshAgent>().speed = 1f;
358
+ NowReloading = false;
359
+ Detection = "Chaseing";
360
+ }
361
+ ```

1

実現したいことによりわかりやすい表現で注釈を追加しました

2023/05/12 22:05

投稿

UngerFlog
UngerFlog

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,7 @@
1
1
  ### 実現したいこと
2
2
 
3
3
  - [ ] NavMeshAgentを利用している敵を強制的に追跡および移動を停止させる
4
+ (敵のリロード中、プレイヤーが敵から離れてしまってもリロードを終えるまで敵に移動を一切させない方法)
4
5
 
5
6
  ### 前提
6
7