在AndEngine中,在哪里调用实体更新方法?

时间:2013-01-09 04:46:15

标签: java android andengine updates

我正在使用AndEngine,我采用了一个组件实体模型来开发我的游戏。我的问题是在AndEngine设置中,我应该在哪里以及如何调用我的实体(及其组件)的更新方法?

我两天前才开始使用AndEngine,所以请原谅我的任何小说。

1 个答案:

答案 0 :(得分:5)

AndEngine 中,对于 Entity ,要使每个帧都调用一个更新方法,其类必须实现IUpdateHandler接口。

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

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

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

这是一个示例代码:

使用更新方法的

实体类。

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);