Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
public class AttackTurrel : MonoBehaviour {
public float coolDown;
private float attackTimer;
public GameObject bullet;
public Transform shotPlace;
// Use this for initialization
void Start () {
attackTimer=0;
if(coolDown==0) coolDown = 2;
shotPlace= transform.Find("towerM").Find("turrPlace1");
}
void Update () {
if(attackTimer>0) attackTimer -=Time.deltaTime;
if(attackTimer<0) attackTimer=0;
}
public void Attack()
{
if(attackTimer==0){
Instantiate(bullet, shotPlace.position, shotPlace.rotation);
attackTimer = coolDown;
}
}
}
using System.Collections;
public class AttackTurrel : MonoBehaviour {
public float coolDown;
private float attackTimer;
public GameObject bullet;
public Transform shotPlace;
// Use this for initialization
void Start () {
attackTimer=0;
if(coolDown==0) coolDown = 2;
shotPlace= transform.Find("towerM").Find("turrPlace1");
}
void Update () {
if(attackTimer>0) attackTimer -=Time.deltaTime;
if(attackTimer<0) attackTimer=0;
}
public void Attack()
{
if(attackTimer==0){
Instantiate(bullet, shotPlace.position, shotPlace.rotation);
attackTimer = coolDown;
}
}
}
shotPlace - это место вылета пули. у пули свой скрипт.
У меня возникает проблема. Unity пишет при запуске NullReferenceExeption на вот этом месте Instantiate(obj, shotPlace.position, shotPlace.rotation);.
Помогите пожалуйста, уже весь измучился.