Unity で 2DRPG 作りに奮闘してます。
今回は NPC と会話する際に問題となっていた点を修正しました。
問題点としては、動き回るNPCに話しかける時、背中ごしだったり。。。
そのほかに、話しかけようとすると遠ざかったりするので、近づいたら、立ち止まり、プレイヤーに向きをかえるように修正しました。
スクリプト
修正
player = GameObject.Find("Player(Clone)"); // PlayerとNPCの距離を計算 float distance = Vector2.Distance( transform.position, player.transform.position ); // PlayerとNPCが閾値より近づいたら、Playerに向きをかえて動かない。 if (distance > distance_val) { Vector2? vector = new Vector2( (transform.position.x - player.transform.position.x) * -1, (transform.position.y - player.transform.position.y) * -1 ); setStateToAnimator(vector: vector != Vector2.zero ? vector : (Vector2?)null); isReachTargetPosition = true; return; }
プレイ動画
これで、背中越しに話しかけることがなくなりました。
www.youtube.com