@Override
	public void render() {		
		Gdx.gl.glClearColor(0, 0, 0, 1);
		Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

        spriteBatch.setProjectionMatrix(camera.combined);

        if (!assetManagerController.update()) {

        }else {
            if (once) {
                once = false;
            }

            camera.update();

            if (debugState) {
                box2DDebugRenderer.render(world, camera.combined);
                characterController.shapeRender(shapeRenderer);
                cameraController.shapeRender();
            }

            SCORE = LevelController.getSCORE();

            cameraController.cameraControl();
            platformResolver.inputHandler();
            worldController.render();

            spriteBatch.begin();

            levelController.render(spriteBatch);
            characterController.render(spriteBatch);
            enemyFactory.render(spriteBatch);
            for(Bullet bullet: bullets) {
                bullet.render(spriteBatch);
            }

            if (levelController.levelFinished()) {
                bitmapFont.setScale(4);
                bitmapFont.draw(spriteBatch,"YOU WIN, SCORE: " + SCORE, camera.position.x - (Gdx.graphics.getWidth() / 3), camera.position.y);
            }else{
                bitmapFont.setScale(2);
                bitmapFont.draw(spriteBatch,"SCORE: " + SCORE,camera.position.x - (Gdx.graphics.getWidth() / 2), camera.position.y + (Gdx.graphics.getHeight() / 2) - 50);
            }
            spriteBatch.end();

        }
	}