Tengo el Sprite puesto,correctamente.Pero cuando pongo movimiento no se mueve y no entiendo que sucede.
¿Que podría ser?
Este es mi codigo:
public void draw (SpriteBatch Batcher){
personaje.draw(Batcher);
}
public void update() {
if(Gdx.input.isTouched()){
if(Gdx.input.getX()> personaje.getX()){
cuerpoJugador.applyLinearImpulse(
new Vector2 (1,0),
cuerpoJugador.getLocalCenter(),true);
}
else if(Gdx.input.getX()< personaje.getX()){
cuerpoJugador.applyLinearImpulse(
new Vector2 (-1,0),
cuerpoJugador.getLocalCenter(),true);
}
personaje.setRotation(cuerpoJugador.getTransform().getRotation());
personaje.setPosition(cuerpoJugador.getPosition().x,cuerpoJugador.getPosition().y);
}
}
Mi render:
public void render(float arg0) {
Gdx.gl.glClearColor(0,0,0,1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
mundo.step(1f/60f,6,2);
jugador.update();
Batcher.begin();
piso.draw(Batcher);
personaje.draw(Batcher);
Batcher.end();
Codigo:
public void show() {
piso = new Sprite(new Texture(Gdx.files.internal("plataforma1.png")));
piso.setPosition(0,-400);
mundo = new World ( new Vector2(0,-98f),true);
Batcher = new SpriteBatch();
escenario = new Plataforma(this,200,100);
jugador = new Jugador(this,200,200);
personaje = new Sprite(new Texture(Gdx.files.internal("panda1.png")));
personaje.setPosition(20,190);