我想制作一个涂鸦跳跃,我为玩家创建两个身体,为平台创建一个,但不是在平台身体上弹跳,玩家可以跳到身体Y坐标上的所有线路。不知道为什么。
private void creerPlateformes(int n)
{
int pX[] = new int[n];
int pY[] = new int[n];
pX[0] = CAMERA_WIDTH/ 2-60;
pY[0] = 780;
for (int i=0;i<n;i++)
{
if (i!=0)
{
final Random r = new Random();
pX[i] = r.nextInt(464-16)+16;
pY[i] = pY[i-1]-r.nextInt(200-100)+100;
}
plateforme[i] = new Sprite(pX[i], pY[i], mPlateformeTextureRegion, getVertexBufferObjectManager());
plateforme[i].setScale(1);
plateforme[i].setUserData("plateforme");
final FixtureDef PLATEFORME_FIX = PhysicsFactory.createFixtureDef(0.0f, 0.0f, 0.0f);
plateformeBody[i] = PhysicsFactory.createBoxBody(physicsWorld, plateforme[i], BodyType.StaticBody, PLATEFORME_FIX);
plateformeBody[i].setUserData("plateforme");
scene.attachChild(plateforme[i]);
}
}
告诉我你是否需要更多代码,但我认为可能存在问题。
答案 0 :(得分:1)
通过传感器事件移动播放器,您可以使用类似
的内容playerBody.setLinearVelocity (float vX, float vY)
x值取决于您的传感器,y值应该类似于您的跳跃速度imho
然后你不再需要移动精灵了,因为它会随着身体的移动而移动