package com.jmrapp.terralegion.game.views.screen;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.jmrapp.terralegion.engine.camera.OrthoCamera;
import com.jmrapp.terralegion.engine.utils.Settings;
import com.jmrapp.terralegion.engine.views.drawables.ResourceManager;
import com.jmrapp.terralegion.engine.views.drawables.SpriteDrawable;
import com.jmrapp.terralegion.engine.views.drawables.ui.TextButton;
import com.jmrapp.terralegion.engine.views.screens.Screen;
import com.jmrapp.terralegion.engine.views.screens.ScreenManager;
public class MainScreen implements Screen {
private Sprite bg = ResourceManager.getInstance().getSprite("menuBg");
private OrthoCamera camera = new OrthoCamera();
private TextButton newWorldBtn = new TextButton("New World", new SpriteDrawable(ResourceManager.getInstance().getSprite("btnBg")), ResourceManager.getInstance().getFont("font"), Settings.getWidth() / 2 - 125, 250);
private TextButton loadWorldBtn = new TextButton("Load World", new SpriteDrawable(ResourceManager.getInstance().getSprite("btnBg")), ResourceManager.getInstance().getFont("font"), Settings.getWidth() / 2 - 125, 175);
@Override
public void create() {
bg.setPosition(0, 0);
}
@Override
public void update() {
camera.update();
if (Gdx.input.isTouched()) {
float touchX = camera.unprojectXCoordinate(Gdx.input.getX(), Gdx.input.getY());
float touchY = camera.unprojectYCoordinate(Gdx.input.getX(), Gdx.input.getY());
if (newWorldBtn.isPressed(touchX, touchY)) {
ScreenManager.setScreen(new GameScreen("MyWorld", 123456789));
} else if (loadWorldBtn.isPressed(touchX, touchY)) {
ScreenManager.setScreen(new GameScreen("MyWorld"));
}
}
}
@Override
public void render(SpriteBatch sb) {
sb.setProjectionMatrix(camera.combined);
sb.begin();
bg.draw(sb);
newWorldBtn.render(sb);
loadWorldBtn.render(sb);
sb.end();
}
@Override
public void dispose() {
}
@Override
public void resize(int width, int height) {
camera.resize();
}
@Override
public void onBackPressed() {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
}