Добрый день, в Unity у меня выскочила вот такая ошибка : NullReferenceException: Object reference not set to an instance of an object vubros.onDown.
Прошу помощи,чтобы разобраться почему?
код 1 :
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class vubros : MonoBehaviour
{
public GameObject item;
private Transform player;
public static bool butslives;
public static float timerperemenai = 0;
public static bool spedbuts;
public GameObject timer;
//public static float resettime = 0;
// public static float resettimechet = 0;
// public static bool reset = false;
public static bool timeropisanie = false;
public static bool speedbutsp = false;
private void Start()
{
player = GameObject.FindGameObjectWithTag("Player").transform;
butslives = false;
;
}
public void spawnDropedItem()
{
Vector3 playerPos = new Vector3(player.position.x + 3, player.position.y + 1,9);
Instantiate(item, playerPos, Quaternion.identity);
}
public void Butslives()
{
if (plaeyr.health < 3)
{
plaeyr.health += 1;
Debug.Log(plaeyr.health + " plaeyr.health");
butslives = true;
Debug.Log("жизнь +");
Destroy(gameObject);
}
else
{
Destroy(gameObject);
Debug.Log("-");
}
}
public void speedbuts()
{
plaeyr.speedbuts += 2.5f;
timerperemenai++;
speedbutsp = false;
//spedbuts = true;
//porehoddliof.oftimer = true;
//resettime++;
//resettimechet++;
}
private void Update()
{
if (resettimechet >= 2)
reset = true;
resettimechet--;
}
public void onDown()
{
//opisanie.presed = true;
speedbutsp = true;
GetComponent<opisanie>().opisaniegameob.SetActive(false);//ругается на эту строчку
}
public void onUp()
{
//opisanie.presed = false;
StartCoroutine(timer());
}
private IEnumerator timer()
{
yield return new WaitForSeconds(2.0f);
timeropisanie = true;
}
}
код 2 :
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class opisanie : vubros
{
//public static bool presed = false;
public Text text;
public GameObject opisaniegameob;
public static bool timeriopisanie;
//private bool zadershka = true;
void Start()
{
}
// Update is called once per frame
void Update()
{
if (vubros.speedbutsp == true && vubros.timeropisanie == false)
{
speedbuts();
}
else if (vubros.speedbutsp == false && vubros.timeropisanie == true)
{
opisaniegameob.SetActive(true);
}
}
}
Пожалуйста, не надо говорить, что нужно было сначала почитать в интернете, почитать документацию. Я читал, я не понял ,что у меня не так. (извините, что я тупой (: )