私の弾丸が発砲し続ける 弾丸を次のように実装しましたが、ちょうど上に上がったようですが、どうしましたか?私の弾丸が上昇し続ける
public class Player1Controls : MonoBehaviour {
// Update is called once per frame
public float speed;
Rigidbody2D player;
public float health;
private int state;
public Rigidbody2D Bullet;
public GameObject Gun;
void Start()
{
player = GetComponent<Rigidbody2D>();
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
Rigidbody2D bullet1 = (Rigidbody2D)Instantiate (Bullet, Gun.transform.position,Quaternion.identity);
}
if(Input.GetKey(KeyCode.W))
{
//transform.Translate(Vector2.up * speed);
player.velocity =(Vector2.up*speed);
state = 1;
}
パブリッククラスMoveBullet:MonoBehaviour {
public float speed;
// Update is called once per frame
void Update() {
Vector3 pos = transform.position;
Vector3 vel = new Vector3(0, speed * Time.deltaTime, 0);
pos = pos + transform.rotation * vel;
transform.position = pos;
}
y方向のみに速度を設定します。それはあなたのプレーヤーのベクトルに沿っている必要があります。 – schultz