2016-02-04 2 views
-2

Я работаю над этим кодом некоторое время, и я просто не могу понять, как это понять. Когда я нажимаю в игре вместо того, чтобы идти к posistion мыши он выбрасывает мои пули далеко, как правило, из любого места до 100 до 300.Unity 5 Как запустить пулю

using UnityEngine; 
using System.Collections; 

public class Shoot : MonoBehaviour { 

    public GameObject Player; 
    public GameObject Bullet; 

    void Update() 
    { 
      bool Shot = false; 
      if(Input.GetMouseDown(0) && Shot == false) 
      { 
      Shot = true; 
      } 

      if (Shot == true) 
      { 
      float x = Player.transform.position.x; 
      float z = Player.transform.position.z; 
      Instantiate(Bullet, new Vector3(x, 0.5f, z)), Quaternion.identity); 
      x = Input.mousePosition.x; 
      z = Input.mousePosition.z; 
      } 
    } 
} 
+1

Пожалуйста, удалите текст «спасибо»/«новый здесь» из вашего сообщения (все тексты без кода) и замените объяснением, что вы пытались и как оно не работает. –

+2

Что происходит, когда вы на самом деле выполняете свой собственный код?? вы даже используете отладчик ..? и я обычно запускаю пулю, потянув курок моего «PX4-Storm», пожалуйста, отредактируйте заголовок – MethodMan

+0

Да, но он обычно делает мои пули x равно трехсот. –

ответ

0

Этот код не имеет большого смысла для меня; Вы просто создаете Gameobject в последней позиции мыши (которая находится на вашем экране, а не в 3D-мире), и вы не применяете к ней никакой силы. Посмотрите на this нить (вы, вероятно, захотите использовать скрипт Gun_Physical).

Смежные вопросы