DEADSOFTWARE

c22ec4901f3c37328d70bf84fc594e2f164503cd
[cavedroid.git] / core / src / ru / deadsoftware / cavecraft / misc / Renderer.java
1 package ru.deadsoftware.cavecraft.misc;
3 import com.badlogic.gdx.graphics.OrthographicCamera;
4 import com.badlogic.gdx.graphics.g2d.SpriteBatch;
5 import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
6 import ru.deadsoftware.cavecraft.GameScreen;
8 public abstract class Renderer {
10 private OrthographicCamera camera;
12 public ShapeRenderer shaper;
13 public SpriteBatch spriter;
15 public Renderer() {
16 this(GameScreen.getWidth(), GameScreen.getHeight());
17 }
19 public Renderer(float width, float height) {
20 camera = new OrthographicCamera();
21 camera.setToOrtho(true, width, height);
22 shaper = new ShapeRenderer();
23 shaper.setProjectionMatrix(camera.combined);
24 spriter = new SpriteBatch();
25 spriter.setProjectionMatrix(camera.combined);
26 }
28 public float getWidth() {
29 return camera.viewportWidth;
30 }
32 public float getHeight() {
33 return camera.viewportHeight;
34 }
36 public float getCamX() {
37 return camera.position.x;
38 }
40 public float getCamY() {
41 return camera.position.y;
42 }
44 public void setCamPos(float x, float y) {
45 camera.position.set(x, y, 0);
46 }
48 public void setFontScale(float scale) {
49 Assets.mcFont.getData().setScale(scale);
50 }
52 public void setFontColor(int r, int g, int b) {
53 Assets.mcFont.setColor(r / 255f, g / 255f, b / 255f, 1f);
54 }
56 public void drawString(String str, float x, float y) {
57 Assets.mcFont.draw(spriter, str, x, y);
58 }
60 public void drawString(String str) {
61 Assets.mcFont.draw(spriter, str,
62 getWidth() / 2 - Assets.getStringWidth(str) / 2,
63 getHeight() / 2 - Assets.getStringHeight(str) / 2);
64 }
66 public abstract void render();
68 }