📜  unity float 从另一个脚本 - C# (1)

📅  最后修改于: 2023-12-03 15:05:44.553000             🧑  作者: Mango

Unity中从另一个脚本获取float

在Unity编程中,我们可能需要从另一个脚本中获取float类型的变量。这个过程很简单,只需要用到C#中的引用传递即可。

首先,在另一个脚本中定义一个float变量,并提供获取该变量的方法:

public class AnotherScript : MonoBehaviour 
{
    public float myFloat = 1.0f;

    public float GetMyFloat() 
    {
        return myFloat;
    }
}

在需要获取该变量的脚本中,首先要引用AnotherScript:

using UnityEngine;

public class MyScript : MonoBehaviour 
{
    AnotherScript anotherScript;

然后在Start()或Awake()方法中查找并引用AnotherScript:

void Start() 
{
    anotherScript = GameObject.FindObjectOfType<AnotherScript>();
}

现在,我们可以随时访问AnotherScript中的myFloat变量:

float anotherFloat = anotherScript.GetMyFloat();

完整代码如下:

using UnityEngine;

public class MyScript : MonoBehaviour 
{
    AnotherScript anotherScript;

    void Start() 
    {
        anotherScript = GameObject.FindObjectOfType<AnotherScript>();
    }

    void Update() 
    {
        float anotherFloat = anotherScript.GetMyFloat();
        Debug.Log("Another float: " + anotherFloat);
    }
}

public class AnotherScript : MonoBehaviour 
{
    public float myFloat = 1.0f;

    public float GetMyFloat() 
    {
        return myFloat;
    }
}

以上就是从另一个脚本中获取float的方法。需要注意的是,如果另一个脚本中的变量是private或protected类型的,我们需要提供公共的getter方法才能获取到该变量。

参考链接: