构建同一类型的多个游戏对象的理想方法是什么,所有游戏对象都可以使用单个控制器控制,但具有不同的具体功能?我不想切换我想要改变动画的所有内容。
例如,男性可以Walk()
和Run()
,狗可以Crawl()
,蝙蝠可以Fly()
。但他们都是敌人,他们有希思,他们都和导航网络代理一起搬了。
在我的主游戏中,我正在做这样的事情:
enemy.SetDestination(pos);
答案 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