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 public OrthographicCamera camera
;
11 public ShapeRenderer shapeRenderer
;
12 public SpriteBatch spriteBatch
;
15 this(GameScreen
.getWidth(), GameScreen
.getHeight());
18 public Renderer(float width
, float height
) {
19 camera
= new OrthographicCamera();
20 camera
.setToOrtho(true, width
, height
);
21 shapeRenderer
= new ShapeRenderer();
22 shapeRenderer
.setProjectionMatrix(camera
.combined
);
23 spriteBatch
= new SpriteBatch();
24 spriteBatch
.setProjectionMatrix(camera
.combined
);
27 public float getWidth() {
28 return camera
.viewportWidth
;
31 public float getHeight() {
32 return camera
.viewportHeight
;
35 public void setFontScale(float scale
) {
36 Assets
.minecraftFont
.getData().setScale(scale
);
39 public void setFontColor(int r
, int g
, int b
) {
40 Assets
.minecraftFont
.setColor(r
/ 255f, g
/ 255f, b
/ 255f, 1f);
43 public void drawString(String str
, float x
, float y
) {
44 Assets
.minecraftFont
.draw(spriteBatch
, str
, x
, y
);
47 public void drawString(String str
) {
48 Assets
.minecraftFont
.draw(spriteBatch
, str
,
49 getWidth() / 2 - Assets
.getStringWidth(str
) / 2,
50 getHeight() / 2 - Assets
.getStringHeight(str
) / 2);
53 public abstract void render();