我有三个全局变量:private PhysicsActor blade;private PhysicsActor blades;private ArrayList<PhysicsActors> blades;我从为我的游戏创建的类中创建了一个演员对象。blade = new PhysicsActor(); blade.storeAnimation( "", exTex ); blade.setOriginCenter(); blade.setEllipseBoundary(); blade.setMaxSpeed(50); blade.setDeceleration(50); bladesList = new ArrayList<PhysicsActor>(); for (int i = 0; i < 3 ; i++) { float xCoord = randomFloatGenerator(425, 50); float yCoord = randomFloatGenerator(mapHeight - 200, 275); blades = blade.clone(); blades.setPosition(xCoord, yCoord); mainStage.addActor(blades); bladesList.add(blades); }问题不在于它们不产卵。这是当我在我的游戏在我的 update(float dt) 方法中运行时调用它们旋转时,只有其中一个在旋转:public void update(float dt) { // rotate the blade 70 degrees blades.rotateBy(70); // rest of code etc}我知道这种情况正在发生,因为我只是在旋转刀片演员。我想要做的是让它们都从 ArrayList 中旋转。但是,我不知道如何从列表中获取它们。我已经尝试使用 for 循环和我在网上看到的其他几种方式来使用 BladeList.get(i),但它不起作用。对我有任何提示或说明吗?此外,如果需要,我将发布更多代码以澄清任何令人困惑的事情。
1 回答
慕标5832272
TA贡献1966条经验 获得超4个赞
你可以试试这个
for (PhysicsActor blade : bladesList) { blade.rotateBy(70); }
这将使列表中的所有刀片旋转 70。假设您可以从调用它的位置访问数组。
添加回答
举报
0/150
提交
取消