Сценарий оружия создает пулю, но путешествие пули во всех направлениях - PullRequest
0 голосов
/ 23 апреля 2019

Bullet Going Everwhere Except Straight

Я пытаюсь создать сценарий оружия, однако после того, как экземпляр пули создан, он не движется в правильном направлении (прямо). Функция, используемая для создания маркеров в Shoot (), которая вызывается, когда цикл Update получает входные данные от GetMouseButton (0).

  public class CharController : MonoBehaviour {

    [SerializeField]
    float moveSpeed = 4f;

    public float aimSpeed;
    Vector3 mousePos;

    Vector3 forward, right;
    public GameObject bulletSpawnPoint;
    public GameObject bullet;
    public float bullet_Speed;
    public float fireRate;

    void Start () {

        forward = Camera.main.transform.forward;
        forward.y = 0;
        forward = Vector3.Normalize(forward);
        right = Quaternion.Euler(new Vector3(0, 90, 0)) * forward;
    }

    void Update () {
        if (Input.GetMouseButton(0))
        {
            transform.position += (-transform.position + mousePos).normalized * aimSpeed * Time.deltaTime;
            transform.position = new Vector3(transform.position.x, 2.5f, transform.position.z);

            Shoot();
        }

    }

    void Shoot()
    {
        GameObject temp_Bullet_Handler;
        temp_Bullet_Handler = Instantiate(bullet, bulletSpawnPoint.transform.position, bulletSpawnPoint.transform.rotation) as GameObject;

        //temp_Bullet_Handler.transform.Rotate(Vector3.left * 90);

        Rigidbody temp_Rigidbody;

        temp_Rigidbody = temp_Bullet_Handler.GetComponent<Rigidbody>();
        temp_Rigidbody.AddForce(Vector3.forward * Time.deltaTime * 10f);

        Destroy(temp_Bullet_Handler, 10.0f);



    }

}

Если у кого-то есть какая-либо информация о том, что заставляет пули не двигаться в прямом направлении от точки создания экземпляра, я хотел бы получить ваш вклад.

Заранее спасибо

1 Ответ

1 голос
/ 23 апреля 2019

Ваше обновление перемещает маркер в направлении, основанном на позиции .Измените это на вектор направления, например, «вперед» вместо transform.position.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...