package com.igorcrevar.goingunder.scenes;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.igorcrevar.goingunder.IActivityRequestHandler;
import com.igorcrevar.goingunder.ISceneManager;
import com.igorcrevar.goingunder.utils.GameHelper;
public class GameLoadingScene implements IScene {
private SpriteBatch spriteBatch = new SpriteBatch();
private boolean isDisposed;
private IActivityRequestHandler activityRequestHandler;
public GameLoadingScene(IActivityRequestHandler activityRequestHandler) {
this.activityRequestHandler = activityRequestHandler;
}
@Override
public void create(ISceneManager sceneManager) {
}
@Override
public void init(ISceneManager sceneManager) {
activityRequestHandler.showAds(true);
}
@Override
public void update(ISceneManager sceneManager, float deltaTime) {
GameHelper.clearScreen();
if (sceneManager.getGameManager().updateLoading()) {
sceneManager.setScene(ISceneManager.IntroScene);
return;
}
if (sceneManager.getGameManager().isBitmapFontLoaded()) {
spriteBatch.getProjectionMatrix().setToOrtho2D(0, 0, 1080, 1920);
spriteBatch.begin();
// draw score
BitmapFont font = sceneManager.getGameManager().getBitmapFont();
font.setScale(1.0f);
font.setColor(Color.WHITE);
String txt = "loading...";
font.draw(spriteBatch, txt, (1080 - font.getBounds(txt).width) / 2.0f, (1920 - font.getBounds(txt).height) / 2.0f);
spriteBatch.end();
return;
}
}
@Override
public void leave(ISceneManager sceneManager) {
dispose(sceneManager);
}
@Override
public void processTouchDown(ISceneManager sceneManager, int x, int y) {
}
@Override
public void processTouchUp(ISceneManager sceneManager, int x, int y) {
}
@Override
public void dispose(ISceneManager sceneManager) {
if (!isDisposed) {
spriteBatch.dispose();
isDisposed = true;
}
}
}