Unityもプログラムも勉強を始めて2ヶ月足らずの初心者です。
Unity 5.2.3.パーソナル版でゲームを作ろうとしています。
迷路のようなステージ上で、敵がPLを追いかけてくる、というものです。
NavMeshの機能を使い、複雑な迷路でもちゃんとPLを追ってくる敵を作ることができました。
敵の動きは主に以下の2つです。
・徘徊モード:フラフラとランダムに歩き回る。PLが視界に入ると追跡モードになる
・追跡モード:PLを追ってくる。一定時間PLが視界から見えない状態が続くと徘徊モードに戻る
そこで困ったことができたので質問させてください。
「PLは通ることができるが敵は通れない場所」があり、そこはNavMeshの移動できる範囲からも外れているのですが、
そこにPLが逃げ込むと敵が止まってしまうようになりました。
コードを見直すと、それは当然で、追跡モード時には「PLの座標を目指す」という命令になっています。
目指せないので止まってしまうというわけです。
しかし突然動かなくなる敵は不自然なので、PLの座標に行くことができない場合は
他の行動(徘徊モードに戻るなど)をさせたいと思うのですが
その方法がわからなく、質問させていただこうと思いました。
if(PLの座標に行けなければ)
みたいな条件分岐ができれば良いのですが…
良い解決方法がわかる方おられましたら、お知恵をお借りできれば助かります。
いろいろ初心者なので、分かりやすい言葉で教えていただけるとなお助かります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/15 13:53
2015/12/17 02:29
2015/12/21 16:46