微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

努力从 C# 中的不同脚本检查函数状态

如何解决努力从 C# 中的不同脚本检查函数状态

好的,所以在分数脚本中,我在更新函数中设置了代码,当“死”变量为假时计数。一旦“死”变量变为真,它就会停止。除了计数器在我仍然处于不理想的主菜单场景时启动之外,它运行良好。但是,当我尝试在主菜单脚本(例如 sCount)中创建一个变量,然后在分数脚本中检查 sCount 的状态时,我收到一个错误,即对象引用未设置为对象的实例。显然我没有正确引用变量或其他东西,但我的语法是完美的。将不胜感激任何帮助。 主菜单代码

using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class MainMenu : MonoBehavIoUr
{
    private score score;
    public bool sCount = false;
    void Awake()
    {
            score = GameObject.FindobjectOfType<score>();
 
    }
    public void start()
    {
        Scene scene = SceneManager.GetActiveScene();
        string currentScene = scene.name;
        Debug.Log(currentScene);
    }
    public void ExitButton()
    {
        Application.Quit();
        Debug.Log("Game Closed");
      }

    public void StartGame(){

        //score = GameObject.FindobjectOfType<score>();
        // score.CountBegin();
        sCount = true;
        SceneManager.LoadScene("SpaceLevel");
       
    }
}

评分脚本:

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class score : MonoBehavIoUr
{
    public Text scoreText;
 public bool dead = false;
    public bool startCount = false;
    public string currentScene;
    
    // Update is called once per frame
    void Start()
    {
       
            scoreText.text = 0.ToString();
        
    }
   public void CountBegin()
    {
        startCount = true;
    }
    public void EndGame()
    {
        dead = true;
    }  
    public void Update()
    {
        bool state = gameObject.GetComponent<MainMenu>().sCount;
        Scene scene = SceneManager.GetActiveScene();
        string currentScene = scene.name;
        Debug.Log(state);
        if (state == true)
        {
            if (dead == true)
            {
                scoreText.text = scoreText.text;

            }
            else
            {
                scoreText.text = Time.time.ToString("0");


            }
        }
        else
        {
            scoreText.text = 0.ToString();
        }
        }
           
        }

其他一切正常,只是这个烦人的错误

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。