Salut,
J'ai un petit soucis avec libgdx
TypingGame.java
public class TypingGame extends Game {
TypingGame game;
GameScreen gameScreen;
GameOverScreen gameOverScreen;
@Override
public void create() {
gameScreen = new GameScreen();
gameOverScreen = new GameOverScreen(game);
Texture.setEnforcePotImages(false);
setScreen(new GameScreen()); // Default screen : Gamescreen
}
}
Je voudrais pouvoir changer le screen actuel avec setScreen; voilà comment j'ai fais :
GameScreen.java
public class GameScreen implements Screen, InputProcessor{
private World world;
private WorldRenderer renderer;
private WorldController controller;
TypingGame game;
@Override
public void render(float delta) {
Gdx.gl.glClearColor(0.5f, 0.1f, 0.1f, 1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
Timer.elapsedTime(delta);
renderer.render(delta);
controller.update(delta);
if(Player.health == 0) game.setScreen(new GameOverScreen(game)); // If the player died, switch to GameOverScreen
}
// And so on...
GameOverScreen.java
public class GameOverScreen implements Screen{
TypingGame game;
GameScreen gameScreen;
public GameOverScreen(TypingGame game){
this.game = game;
gameScreen = new GameScreen();
}
@Override
public void render(float delta) {
Gdx.gl.glClearColor(0.5f, 0.1f, 0.1f, 1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
}
@Override
public void resize(int width, int height) {
}
@Override
public void show() {
}
@Override
public void hide() {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
@Override
public void dispose() {
}
}
Je comprends pas d'où vient cette erreur :
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.NullPointerException
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1
.run(LwjglApplication.java:113)
Caused by: java.lang.NullPointerException
Normalement c'est plutôt simple à utiliser mais la seule classe où je peux utiliser setScreen sans que ça bug c'est ... TypingGame.java mais c'est pas là où j'en ai besoin.
Merci beaucoup de votre aide, je suppose que le code est pas très lisible je vous invite donc à consulter mon post sur stackoverflow, c'est plus agréable à lire.
http://stackoverflow.com/questions/18037852/libgdx-setscreen-nullpointer-exception
Merci ;)