質問編集履歴
3
自己解決の際の修正の仕方が間違っていたため修正。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
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
自己解決したため、そちらの内容について追記
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
実現したいことによりわかりやすい表現で注釈を追加しました
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
|
|