我在AndEngine中使用Path,它允许将精灵移动到提供X和Y坐标的特定位置。
我有一个云连接到我的场景,我希望云在X轴上(在横向模式下是水平的)从一侧到另一侧来回移动但不超过相机。
这是我到目前为止所拥有的:
Sprite cloudSprite = new Sprite(50, 300, (TextureRegion)this.cloud);
final Path path = new Path(10).to(50,300).to(100, 300);
cloudSprite.registerEntityModifier(new LoopEntityModifier(new PathModifier(10, path)));
这不能正常工作,我已经尝试将X和Y更改为参数,但无济于事。
任何人都知道如何完成这项工作?
答案 0 :(得分:3)
您不应该为此目的使用PathModifier
;请改用MoveXModifier
。
final float minX = 0;
final float maxX = CAMERA_WIDTH - cloudSprite.getWidth();
final float duration = //Duration for the full move across the screen here.
final MoveXModifier rightMoveModifier = new MoveXModifier(minX, maxX, duration);
final MoveXModifier leftMoveModifier = new MoveXModifier(maxX, minX, duration);
cloudSprite.registerEntityModifier(new LoopEntityModifier(new SequenceModifier(rightMoveModifier, leftMoveModifier)));
(这里我们假设在游戏加载时云被放置在屏幕的左侧)
这应该有用。