问题描述
限时送ChatGPT账号..有没有办法实例化从 MonoBehaviour 派生的类,例如下面的示例而不会收到警告:您正在尝试使用 'new' 关键字创建 MonoBehaviour.这是不允许的.只能添加 MonoBehaviours使用 AddComponent().或者,您的脚本可以从 ScriptableObject 继承或根本没有基类"
Is there a way to instantiate a class that derives from MonoBehaviour such as the example bellow without getting the warning: "You are trying to create a MonoBehaviour using the 'new' keyword. This is not allowed. MonoBehaviours can only be added using AddComponent(). Alternatively, your script can inherit from ScriptableObject or no base class at all"
示例:
public class e1506131012test2 : MonoBehaviour
{
Move move = new Move();
//Move move = gameObject.GetComponent<Move>();
void Update()
{
move.Printing();
}
}
public class Move : MonoBehaviour
{
public int number = 5;
public void Printing()
{
print(number);
}
}
推荐答案
不要从 MonoBehaviour 派生它.
Just don't derive it from MonoBehaviour.
public class Move
{
public int number = 5;
public void Printing()
{
print(number);
}
}
如果它真的必须是 MonoBehaviour,那意味着你可能将它放在预制件上,在这种情况下你使用 Instantiate().
And if it really must be a MonoBehaviour, that means you probably have it on a prefab, in which case you use Instantiate().
这篇关于实例化一个派生自 MonoBehaviour 的类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
更多推荐
[db:关键词]
发布评论