我一直在研究这段代码,我似乎无法弄明白。当我点击游戏而不是去鼠标位置时,它会将我的子弹从远处抛到100到300之间。
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;
}
}
}
答案 0 :(得分:0)
这段代码对我来说没什么意义;您只需在最后一个鼠标位置(在屏幕上,而不是3D世界中)实例化一个Gameobject,并且您不会对它施加任何力。请查看this主题(您可能想使用Gun_Physical脚本)。