質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

2回答

9991閲覧

Unity 突進型の敵キャラAI

vanitier

総合スコア38

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

4クリップ

投稿2015/06/02 04:09

Unityでプレイヤーに突っ込んでくるタイプの敵を作りたいのですが
今のスクリプトだと読み込んだ時にプレイヤーが居た位置に移動した後
その場で止まってしまいます。

突進を回避しても最初にプレイヤーが居た方向へ進み続けるためにはどうすればいいのでしょうか?

lang

1コード 2using UnityEngine; 3using System.Collections; 4 5public class EnemyZombie : MonoBehaviour { 6 public float speed = 5f; 7 private Vector2 target; 8 protected GameObject player; 9 10 public void Awake () { 11 player = GameObject.FindWithTag ("Player"); 12 target = player.transform.position; 13 if (target.x < this.transform.position.x) { 14 transform.localScale = new Vector3 (-1, transform.localScale.y, transform.localScale.z); 15 } 16 } 17 18 public void Update () { 19 transform.position = Vector2.MoveTowards (transform.position, new Vector2 (target.x, transform.position.y), speed * Time.deltaTime); 20 } 21 }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Awakeで行っている
target = player.transform.position;
を、
Update()の中でやってみてはどうですか?

public void Update () { **target = player.transform.position;** transform.position = Vector2.MoveTowards (transform.position, new Vector2 (target.x, transform.position.y), speed * Time.deltaTime); } }

投稿2015/06/02 05:38

runun

総合スコア305

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

vanitier

2015/06/03 04:02

別の追跡タイプを作るための参考になりました。 ありがとうございます。
guest

0

ベストアンサー

・Rigidbody2d.velocityを使う。
名前の通り速度を指定します。
出現時に方向を決定して、長さspeedの速度ベクトルを作ってあげましょう。

シューティングゲームの自機狙い弾のような挙動なので、
その辺りで調べればサンプルがいくらでもあると思います。

transform.position使ってもできますが、考え方は結局一緒です。

投稿2015/06/02 04:57

ozwk

総合スコア13512

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

vanitier

2015/06/03 03:53

自分のイメージしていた挙動にベストでした。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問