1. Singleton instance
2. Static public function, called with class name. function name ()
public class Test2 : MonoBehaviour
{
public static void HH()
{
print("hhhhh");
}
public static int Add(int x,int y)
{
print(x + y);
return x + y;
}
}
========================================================
//调用
public class Test3 : MonoBehaviour
{
void Start()
{
Test2.Add(5, 6);
Test2.HH();
}
}
3. GameObject.Find search object, then GetComponent script and method
public class Test2 : MonoBehaviour
{
public void Getid()
{
}
}
=======================================================
//调用
GameObject.Find("写挂在Test2脚本的对象名称").GetComponent<Test2>().Getid();
4. GameObject.Find search object, then SendMessage (function name)
public class Test2 : MonoBehaviour
{
public void Getid()
{
print("Getid");
}
}
================================================================
//调用
GameObject.Find("挂载到有Getid方法的对象名称").SendMessage("Getid", SendMessageOptions.DontRequireReceiver);
//SendMessageOptions.RequireReceiver //如果没有找到相应函数,会报错(默认是这个状态)
//SendMessageOptions.DontRequireReceiver //即使没有找到相应函数,也不会报错,自动忽略
//SendMessage仅向指定对象的所有脚本推送消息
//SendMessageUpwards向指定对象和它的所有父物体推送消息
//BroadcastMessage向指定对象和它的所有子物体推送消息
5. The simplest method is public script name name
transfer