using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Gun : MonoBehaviour {
public int Player_Health = 100;
public GameObject Player;
public Rigidbody Bullet;
public Transform Guun;
public bool Player_Dead = false;
// Use this for initialization
void Start() {
}
// Update is called once per frame
void Update() {
if (Input.GetKeyDown(KeyCode.Space))
{
Rigidbody rocketInstance;
rocketInstance = Instantiate(Bullet, Guun.position, Guun.rotation) as Rigidbody;
rocketInstance.AddForce(Guun.forward * 5000);
}
if(Player_Health == 0)
{
Player_Dead = true;
}
if(Player_Dead == true)
{
Destroy(Player);
}
}
private void OnCollisionEnter(Collision col)
{
if(col.gameObject.name == "Player")
{
Player_Health = Player_Health - 20;
Debug.Log(Player_Health);
}
}
}
1.So, когда я создаю экземпляр, нажимая пробел, он сначала запускает 1, затем 2, затем 4, затем 8 и т. Д. - почему он не просто создает 1 каждое нажатие. Я пытаюсь сделать ружье здесь и, очевидно, нужно, чтобы он стрелял только одной пулей за раз, потому что на данный момент он стреляет несколько. Как я уже объяснял сначала, он запускает одну пулю, затем в следующий раз, когда я стреляю, она удваивает ее и так далее.Как использовать экземпляр в C#?
Пожалуйста, разместите ваши два вопроса в виде отдельных вопросов (ваш вопрос слишком широк из-за этого). – cybermonkey
@cybermonkey они очень простые вопросы, пожалуйста, хотя бы ответьте на один – Goady
Ваш второй вопрос не имеет смысла. Пожалуйста, объясните это или задайте его как вопрос enw. – Programmer