DEADSOFTWARE

Update version
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / misc / Renderer.java
1 package ru.deadsoftware.cavedroid.misc;
3 import com.badlogic.gdx.Gdx;
4 import com.badlogic.gdx.InputProcessor;
5 import com.badlogic.gdx.graphics.OrthographicCamera;
6 import com.badlogic.gdx.graphics.g2d.SpriteBatch;
7 import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
9 public abstract class Renderer implements InputProcessor {
11 protected final ShapeRenderer shaper;
12 protected final SpriteBatch spriter;
13 private final OrthographicCamera camera;
15 protected Renderer() {
16 this(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
17 }
19 protected 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.minecraftFont.getData().setScale(scale);
50 }
52 protected void setFontColor(int r, int g, int b) {
53 Assets.minecraftFont.setColor(r / 255f, g / 255f, b / 255f, 1f);
54 }
56 protected void drawString(String str, float x, float y) {
57 Assets.minecraftFont.draw(spriter, str, x, y);
58 }
60 protected void drawString(String str) {
61 Assets.minecraftFont.draw(spriter, str,
62 getWidth() / 2 - (float) Assets.getStringWidth(str) / 2,
63 getHeight() / 2 - (float) Assets.getStringHeight(str) / 2);
64 }
66 public abstract void render(float delta);
68 @Override
69 public boolean keyDown(int keycode) {
70 return false;
71 }
73 @Override
74 public boolean keyUp(int keycode) {
75 return false;
76 }
78 @Override
79 public boolean keyTyped(char character) {
80 return false;
81 }
83 @Override
84 public boolean touchDown(int screenX, int screenY, int pointer, int button) {
85 return false;
86 }
88 @Override
89 public boolean touchUp(int screenX, int screenY, int pointer, int button) {
90 return false;
91 }
93 @Override
94 public boolean touchDragged(int screenX, int screenY, int pointer) {
95 return false;
96 }
98 @Override
99 public boolean mouseMoved(int screenX, int screenY) {
100 return false;
103 @Override
104 public boolean scrolled(float amountX, float amountY) {
105 return false;