Я работаю над 3D-игрой на Unity, но недавно возникла проблема. Я не могу получить доступ к переменной из скрипта другого префаба. Я пробовал это раньше, когда объект, к которому нужно получить доступ, не был префабом, и он работал правильно.
Это скрипт, который пытается получить доступ к переменной «slashtime», но при запуске он возвращает 0 хотя в другом скрипте переменная постоянно меняется.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class collision : MonoBehaviour
{
public GameObject sword;
public float slashtime;
private void Update()
{
slashtime=sword.GetComponent<movement>().slashtime;
}
private void OnTriggerEnter(Collider collider)
{
if (collider.tag == "sword" && slashtime+1f > Time.time)
{
Destroy(gameObject);
}
}
}