2013-01-09 23 views
0

我正在使用AndEngine,并采用了Component-Entity Model来开发我的游戏。我的问题是在AndEngine设置中,在哪里以及如何调用我的实体(及其组件)的更新方法?在AndEngine中,在哪里调用实体更新方法?

我刚刚开始使用AndEngine两天前,所以请原谅我的任何noobity。

回答

5

AndEngine,为您实体有,使程序在每帧调用更新方法,它的类必须实现IUpdateHandler接口。

这将强制您覆盖public void onUpdate(float pSecondsElapsed)public void reset()方法。

然后,您将“更新代码”放在onUpdate(float pSecondsElapsed)的正文中。

实例化对象实现IUpdateHandler接口然后必须通过registerUpdateHandler(IUpdateHandler updateHandler)注册在您的Scene对象中。

下面是一个例子的代码:

实体类与更新方法。

public class Entity implements IUpdateHandler 
{ 
    // Lorem ipsum dolor sit amet... 
    @Override 
    public void onUpdate(float pSecondsElapsed) 
    { 
      // Update code here 
    } 

    @Override 
    public void reset() { 
      // Reset code here 
    }  
} 

,然后在SimpleBaseGameActivity的初始化块,你必须在主场景声明为

Scene mainScene; 

您注册的实体是这样的:

Entity entity = new Entity(); 

this.mainScene.registerUpdateHandler(entity);