@logxy

Ошибка unity 2d, что делать?

Писал очередной скрипт для игры на c# в unity(2d) и у меня уже был написанный скрипт для управления героем, но после добавления скрипта у меня выдается ошибка (NullReferenceException: Object reference not set to an instance of an object
Slot.Update () (at Assets/Scripts/Inventory/Slot.cs:14)
и еще не ходит персонаж
вот код управления персонажем:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerControll : MonoBehaviour
{
    public float speed = 1500f;
    private Rigidbody2D rb;
    private bool faceRight = true;
    void Start()
    {
        rb = GetComponent <Rigidbody2D> ();
       
    }
    void Update()
    {
        float moveX = Input.GetAxis ("Horizontal");
        rb.MovePosition (rb.position + Vector2.right * moveX * speed * Time.deltaTime );

        if(Input.GetKeyDown (KeyCode.Space)){
            rb.AddForce(Vector2.up * 2000);
        }
        if(moveX > 0 && !faceRight)
        {
            flip();
        }else if (moveX < 0 && faceRight){
            flip();
        }
        if(Input.GetKeyDown (KeyCode.LeftShift))
        {
            speed = 200f;
        }
        if(Input.GetKeyUp (KeyCode.LeftShift)){
            speedest();
        }
       
    }
    void flip(){
        faceRight = !faceRight;
        transform.localScale  = new Vector3 (transform.localScale.x * -1, transform.localScale.y, transform.localScale.z);
    }
    void speedest(){
        speed = 20f;
    }
}

Все ссылки вставил
  • Вопрос задан
  • 169 просмотров
Решения вопроса 1
GavriKos
@GavriKos Куратор тега Unity
Ну тут следующие варианты:
- не нашло компонент Inventory на обхекте с тегом Player
- У инвентаря isFull не проинициализирован.

Учите отладку. Хотя бы логами. Что то у вас Null и об этом явно написано - осталось понять что из двух
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы