📅  最后修改于: 2023-12-03 15:05:44.553000             🧑  作者: Mango
在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方法才能获取到该变量。
参考链接: