构建多个敌人游戏对象

时间:2016-08-16 08:13:54

标签: c# unity3d

构建同一类型的多个游戏对象的理想方法是什么,所有游戏对象都可以使用单个控制器控制,但具有不同的具体功能?我不想切换我想要改变动画的所有内容。

例如,男性可以Walk()Run(),狗可以Crawl(),蝙蝠可以Fly()。但他们都是敌人,他们有希思,他们都和导航网络代理一起搬了。

在我的主游戏中,我正在做这样的事情:

enemy.SetDestination(pos);

1 个答案:

答案 0 :(得分:1)

我建议你使用Interfaces。在C#中,它允许创建在多种类型的对象中常见的函数和属性。

要创建界面,您必须使用" interface"保留字:

public interface InterfaceName {

    //Properties of the interface
    int health {get; set;}

    //Methods of the interface
    void Hit(int damage);
}

接口与类非常相似,但它的方法中没有定义。它们用于构造类似的行为。创建界面后,在主类中需要实现它:

public class YourClass : InterfaceName {
   //.....

   // Implementation of your interface
   void Hit(int damage){
      //Your code here
   }

   //.....
}

由于C#不支持多重继承类,因此接口对于重用代码非常重要。

如果您需要有关接口的更多信息,我建议您link

编辑:

也看看这个:Unity - Interfaces