【发布时间】:2014-10-26 06:17:09
【问题描述】:
我有我写的这个方法,在矿石精灵顶部显示一块空的岩石,一旦从中开采资源,并且在一定时间后,应该消失,所以可以再次开采矿石,就像 runescape 一样。
它显示开采后的空矿,但问题是,在五块矿石中,只有一个空矿精灵会消失,其余的则一直存在。我认为这是因为当它被调用时,它不知道哪个“emptyOre”精灵是哪个。有没有办法让它们变得独一无二,或者有什么不同的方法可以做到这一点?
public static void emptyOre(final float oreX, final float oreY, float displayTime){
emptyOre = new Sprite(oreX, oreY,
AssetLoaderUtil.emptyOreTextureRegion,
mContext.getVertexBufferObjectManager());
SceneManager.mWorldScene.attachChild(emptyOre);
//SceneManager.mWorldScene.registerTouchArea(emptyOre);
emptyOre.setVisible(true);
emptyOre.setZIndex(2);
TimerHandler spriteTimerHandler;
float mEffectSpawnDelay = displayTime;
SceneManager.mWorldScene.registerUpdateHandler(spriteTimerHandler = new TimerHandler(
mEffectSpawnDelay, new ITimerCallback() {
@Override
public void onTimePassed(
final TimerHandler pTimerHandler) {
mContext.runOnUpdateThread(new Runnable() {
public void run() {
SceneManager.mWorldScene
.detachChild(emptyOre);
}
});
//SceneManager.mWorldScene.detachChild(emptyOre);
//emptyOre.setVisible(false);
}
}));
}
【问题讨论】:
标签: java android andengine sprite