The Object you want to instantiate is null.

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

The Object you want to instantiate is null.

Сообщение DniSon 18 ноя 2019, 12:18

Хотел сгенерировать пулю. Но выдает ошибку...
Синтаксис:
Используется csharp
    [SerializeField]
    private int lives = 5;
    [SerializeField]
    private float speed = 3.0f;
    [SerializeField]
    private float JumpForce = 10.0f;
    new private Rigidbody2D rigidbody;
    private Animator anim;
    private SpriteRenderer sprite;
    private bool IsGrounded = false;
    private Bullet bullet1;

    private CharState state
    {
        get { return (CharState)anim.GetInteger("State"); }
        set { anim.SetInteger("State", (int)value); }
    }
    private void Awake()
    {
        rigidbody = GetComponent<Rigidbody2D>();
        anim = GetComponent<Animator>();
        sprite = GetComponentInChildren<SpriteRenderer>();
        bullet1 = Resources.Load<Bullet>("Pulya");
    }
    private void FixedUpdate()
    {
        CheckGround();
    }
    private void Update()
    {
        if(Input.GetButtonDown("f1"))Shoot();
        if(IsGrounded)state = CharState.Idle;
        if (Input.GetButton("Horizontal")) Run();
        if (IsGrounded && Input.GetButtonDown("Jump")) Jump();
    }
    private void Run()
    {
        if(IsGrounded)state = CharState.Run;
        Vector3 direction = transform.right * Input.GetAxis("Horizontal");
        transform.position = Vector3.MoveTowards(transform.position, transform.position + direction, speed * Time.deltaTime);
        sprite.flipX = direction.x <0.0f;

    }
    private void Jump()
    {
        rigidbody.AddForce(transform.up * JumpForce, ForceMode2D.Impulse);
        state = CharState.Jump;
    }
    private void Shoot()
    {
        Vector3 posit1on = transform.position; posit1on.y += 0.8f;
        Instantiate(bullet1, posit1on, transform.rotation);
    }
    private void CheckGround()
    {
        Collider2D[] colliders = Physics2D.OverlapCircleAll(transform.position,0.3f);
        IsGrounded = colliders.Length > 1;
    }
DniSon
UNец
 
Сообщения: 1
Зарегистрирован: 18 ноя 2019, 12:14

Re: The Object you want to instantiate is null.

Сообщение Jarico 18 ноя 2019, 13:17

Синтаксис:
Используется csharp
bullet1 = Resources.Load<Bullet>("Pulya");


Префаб не нашёлся... Лучше оставь ссылку на префаб с помощью инспектора
Github: _https://github.com/redheadgektor
Discord: Конь! Чаю!#9382 (сижу редко)
YouTube: _https://www.youtube.com/channel/UCPQ04Xpbbw2uGc1gsZtO3HQ
Telegram: _https://t.me/redheadgektor
Аватара пользователя
Jarico
Адепт
 
Сообщения: 1084
Зарегистрирован: 06 янв 2019, 17:37
Откуда: 0xDEAD
Skype: none
  • Сайт

Re: The Object you want to instantiate is null.

Сообщение Saltant 18 ноя 2019, 13:57

bullet1 это ваще GameObject?
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2234
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт

Re: The Object you want to instantiate is null.

Сообщение immeasurability 18 ноя 2019, 17:47

bullet1 = Resources.Load<Bullet>("Pulya");

убедись что в папке ресурсов находится префаб Pulya со скриптом<Bullet>

Лучше оставь ссылку на префаб с помощью инспектора

лучше чем меньше манипуляций в интерфейсе редактора, тем лучше (для меня) что бы не путаться в будущем что надо указывать а что нет
Discord era#6140

youtube.com/user/immeasurability/videos
Аватара пользователя
immeasurability
Адепт
 
Сообщения: 1097
Зарегистрирован: 08 авг 2013, 18:09


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 18