我想这是我关于同一主题的第二篇文章,有点……
无论如何,我想通过传递一个 AI 行为来替换或添加来动态更新我的代理AIbundles类:
*不工作代码
public class agent
{
AIbundles = new AIbundle();
public void UpdateBehavior (object Behavior)
{
object CastedBehavior = (Behavior.type) Behavior; //Cast
this.agent.AIbundles.(Behavior.type) = CastedBehavior;
}
}
我的 AIbundles 类的示例(非常简化)
public class AIbundles
{
ExampleBehavior1 ExampleBehavior1;
ExampleBehavior2 ExampleBehavior2;
ExampleBehavior3 ExampleBehavior3;
AIbundles()
{
ExampleBehavior1 = new ExampleBehavior1();
ExampleBehavior2 = new ExampleBehavior2();
ExampleBehavior3 = new ExampleBehavior3();
}
}
可悲的是,我很清楚这是一种非常糟糕的实现方式,是否有更好的方法来动态处理对象?