如何创建基本字符类的实例

时间:2014-10-07 05:58:16

标签: c# inheritance unity3d instances gameobject

为了将某个类附加到GameObject,它需要从MonoBehaviour继承。如果我创建一个包含NPC和PC共享的所有属性的基本字符类,如何创建该类的实例并将其附加到游戏对象?为了给出问题的具体示例,如果基本字符类具有健康,耐力,强度等变量,并且我希望特定游戏对象具有这些属性的特定集合,我如何将其附加到游戏对象作为它不能继承基本字符类?

我怀疑我犯的错误是认为这些实例甚至需要附加到我希望它们关联的对象上,但是在这里一些明确的指导将是最受欢迎的。

1 个答案:

答案 0 :(得分:4)

看起来你真正想要的是一个基类,它也允许它的孩子成为MonoBehaviours。您可以通过使您的基类成为抽象的MonoBehaviour并从中继承来实现此目的。

 public abstract class Base : MonoBehaviour
 {
     protected int HP;
 }

然后,这个班级的孩子也将成为MonoBehaviours,你可以将它们附加到GameObjects。

 public class Ninja : Base
 {
     void Start()
     {
          HP = 100;
     }
 }